ubuntu 如何使用vrf

打印 上一主题 下一主题

主题 809|帖子 809|积分 2427

在Ubuntu或其他Linux系统中,您使用ip命令和sysctl命令设置的网络和内核参数通常是暂时的,这意味着在系统重启后这些设置会丢失。为了将这些设置持久化,您需要采取一些额外的步骤。
对于ip命令设置的网络接口和路由,您可以将这些设置添加到网络管理工具的设置文件中,或者创建一个启动脚原来在系统启动时重新应用这些设置。然而,对于VRF(Virtual Routing and Forwarding)这样的高级设置,通常需要特定的网络管理工具或自定义脚原来处置惩罚。
以下是一些大概的步骤来持久化您的设置:

  • 使用Netplan(假如适用)
    Netplan是Ubuntu 18.04及更高版本中的网络设置工具。但是,Netplan原生不支持VRF设置。因此,您大概需要编写一个自定义的启动脚原来设置VRF。
  • 编写自定义启动脚本
    您可以创建一个脚本,该脚本使用ip命令来设置VRF和其他网络设置,并将该脚本添加到系统的启动项中。例如,您可以将脚本放在/etc/network/if-up.d/目录中(假如此目录存在且被系统使用),或者创建一个systemd服务来在启动时运行该脚本。
    脚本示例(假设生存为/etc/network/if-up.d/vrf-setup-script.sh):
    1. #!/bin/bash
    2. ip link add mgmt type vrf table 2
    3. ip link set dev mgmt up
    4. ip link set ens37 vrf mgmt
    5. route add default gw 192.168.8.1 dev mgmt
    复制代码
    确保脚本具有执行权限:sudo chmod +x /etc/network/if-up.d/vrf-setup-script.sh
    但是,请注意,这种方法大概不适用于所有环境,因为/etc/network/if-up.d/目录和此中的脚本大概在某些Ubuntu版本或网络设置中不被使用。
  • 使用systemd服务
    创建一个systemd服务来在启动时运行设置脚本大概是一个更可靠的方法。您可以创建一个systemd单元文件,该文件指定了一个在启动时运行的脚本。
    单元文件示例(假设生存为/etc/systemd/system/vrf-setup.service):
    1. [Unit]
    2. Description=Setup VRF
    3. After=network.target
    4. [Service]
    5. Type=oneshot
    6. ExecStart=/etc/network/if-up.d/vrf-setup-script.sh
    7. RemainAfterExit=true
    8. [Install]
    9. WantedBy=multi-user.target
    复制代码
    然后,启用并启动该服务:
    1. sudo systemctl enable vrf-setup.service
    2. sudo systemctl start vrf-setup.service
    复制代码



  • 持久化sysctl设置
    对于sysctl设置,您可以将它们添加到/etc/sysctl.conf文件或/etc/sysctl.d/目录中的某个文件中。例如:
    1. echo "net.ipv4.tcp_l3mdev_accept=1" | sudo tee -a /etc/sysctl.conf
    2. echo "net.ipv4.udp_l3mdev_accept=1" | sudo tee -a /etc/sysctl.conf
    3. sudo sysctl -p
    复制代码
  1. 创建VRF
  2. ip link add yewu type vrf table 1
  3. ip link add mgmt type vrf table 2
  4. 启用VRF
  5. ip link set dev yewu up
  6. ip link set dev mgmt up
  7. ##简要查看采用-br参数
  8. # ip -br link show type vrf
  9. ##查看所有vrf,-d参数可以显示ID号
  10. # ip link show type vrf
  11. 将物理接口绑定VRF
  12. ip link set ens33 vrf yewu
  13. ip link set ens37 vrf mgmt
  14. 将物理接口移除VRF
  15. ip link set dev ens33 nomaster
  16. ##显示被分配给vrf的设备
  17. $ ip link show vrf  yewu
  18. 查看
  19. ip neigh show vrf yewu
  20. ip route show table 1
  21. route add default gw 192.168.162.2 dev yewu
  22. route add default gw 192.168.8.1 dev mgmt
  23. ip route get vrf yewu 223.5.5.5
  24. ping -I yewu  -4  www.baidu.com
  25. sysctl -w net.ipv4.tcp_l3mdev_accept=1
  26. sysctl -w net.ipv4.udp_l3mdev_accept=1
  27. sysctl net.ipv4.raw_l3mdev_accept
  28. sysctl net.ipv4.tcp_l3mdev_accept
  29. sysctl net.ipv4.udp_l3mdev_accept
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

一给

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表