👉点击这里申请火山引擎VIP帐号,立即体验火山引擎产品>>>
操作场景
操作系统类型 | 版本 |
CentOS | CentOS 8.x、 CentOS Stream |
Fedora | Fedora 37 64位 |
Windows Server | 所有版本 |
前提条件
Linux系统在命令行执行ip address show命令。
Windows系统在命令行执行ipconfig命令。
配置辅助网卡
使用工具配置
操作系统类型 | 版本 |
CentOS | CentOS 7.1~7.9 64位 |
Ubuntu |
|
操作系统类型 | 版本 | 默认网络管理工具 |
CentOS |
|
|
Ubuntu |
|
|
对网络服务类型为network-scripts的CentOS 7系统,您可以执行如下命令下载并安装辅助网卡自动配置工具。
wget http://mirrors.ivolces.com/extra-tools/centos/7/rpms/multi-nic-hotlog-for-centos7-v1.0.1-1.ve1.x86_64.rpmyum install ./multi-nic-hotlog-for-centos7-v1.0.1-1.ve1.x86_64.rpm
安装工具后,请执行reboot命令重启实例。重启后工具将自动完成辅助网卡配置。
执行ip address show命令,查看辅助网卡是否正常识别主私网IP地址。
请您登录云服务器,查看自动生成的辅助网卡路由是否满足需求,若不满足,请参见下文“修改网卡路由”。
Ubuntu 16
对网络服务类型为interface的Ubuntu 16系统,您可以执行如下命令下载并安装辅助网卡自动配置工具。
wget http://mirrors.ivolces.com/extra-tools/ubuntu/pool/main/m/multi-nic-hotlog-for-ubuntu-le-17/multi-nic-hotlog-for-ubuntu-le-17_1.0.1_amd64.debdpkg -i multi-nic-hotlog-for-ubuntu-le-17_1.0.1_amd64.deb
安装工具后,请执行reboot命令重启实例。重启后工具将自动完成辅助网卡配置。
执行ip address show命令,查看辅助网卡是否正常识别主私网IP地址。
Ubuntu18/20/22
对网络服务类型为interface的Ubuntu 18/20/22系统,您可以执行如下命令下载并安装辅助网卡自动配置工具。
wget http://mirrors.ivolces.com/extra-tools/ubuntu/pool/main/m/multi-nic-hotlog-for-ubuntu/multi-nic-hotlog-for-ubuntu_1.0.1_amd64.debdpkg -i multi-nic-hotlog-for-ubuntu_1.0.1_amd64.deb
安装工具后,请执行reboot命令重启实例。重启后工具将自动完成辅助网卡配置。
执行ip address show命令,查看辅助网卡是否正常识别主私网IP地址。
手动配置
Debian/veLinux
远程连接云服务器并登录,具体操作请参考登录Linux实例。
执行如下命令,打开网卡eth1的配置文件。
vi /etc/network/interfaces
键盘输入i进入编辑状态,在网卡eth1配置文件中添加配置信息。
auto eth0 iface eth0 inet dhcp auto eth1 iface eth1 inet dhcp
执行如下命令,查看网卡的配置文件,并确认修改。
cat /etc/network/interfaces
执行如下命令,重启网络服务。
systemctl restart networking
您可执行命令ip address show查看网卡eth1的主私网IP地址是否已被识别。
Ubuntu
远程连接云服务器并登录,具体操作请参考登录Linux实例。
执行如下命令,创建并打开辅助网卡eth1的配置文件。
vim /etc/netplan/eth1-netcfg.yaml
按i键进入编辑状态,在网卡eth1配置文件中添加配置信息。
network: version: 2 ethernets: eth1: dhcp4: true dhcp4-overrides: route-metric: 200
该配置文件为.yaml格式,编辑时需遵循YAML语法。
.yaml格式下请使用空格缩进,勿使用(Tab)缩进。
为避免产生格式问题,建议直接复制默认配置文件/etc/netplan/99-netcfg.yaml进行修改。
配置完成后,按Esc键,输入:wq后按回车键,保存编辑并退出。
执行netplan apply命令,使配置生效。
执行systemctl restart systemd-networkd.service命令,重启网络。
执行ip address show命令,查看辅助网卡是否正常识别主私网IP地址。
OpenSUSE
远程连接云服务器并登录,具体操作请参考登录Linux实例。
执行如下命令,打开网卡eth1的配置文件。
vi /etc/sysconfig/network/ifcfg-eth1
键盘输入i进入编辑状态,在网卡eth1配置文件中添加配置信息。
BOOTPROTO='dhcp4' STARTMODE='auto' USERCONTROL='no'
执行如下命令,查看网卡的配置文件,并确认修改。
cat /etc/sysconfig/network/ifcfg-eth1
执行如下命令,重启网络服务。
systemctl restart network
执行ip address show命令,查看辅助网卡是否正常识别主私网IP地址。
后续操作
Linux系统在命令行执行ip route命令。
Windows系统在命令行执行route print命令。
修改网卡路由
通过命令行修改路由
Linux实例修改网卡路由
远程连接云服务器并登录,具体操作请参考登录Linux实例。
执行如下命令,查看当前路由是否符合需求。
route -n
符合要求,无需后续操作。
不符合需求,请参考步骤3,根据实际需求增、删路由转发策略。
您可执行如下命令,查看路由相关命令。
ip route help
ip -4 route <策略> <目标网段> via <网关地址> dev <网络接口> metric <优先级>
参数名 | 说明 |
策略 | 命令操作。取值:
|
目标网段 | 按最长掩码原则匹配路由,即掩码越长,优先级越高。 |
网关地址 | 指定网卡的网关地址。 |
网络接口 | 指定网卡。 |
优先级 | 当目标网段相同时,metric数值越小,表示该条路由的优先级越高。 |
例如辅助网卡eth1绑定了公网IP,需要默认使用辅助网卡的公网IP访问公网。
ip -4 route add 0.0.0.0/0 via 192.168.2.1 dev eth1 metric 98 ip -4 route add 0.0.0.0/0 via 192.168.1.1 dev eth0 metric 99 ip -4 route del 0.0.0.0/0 via 192.168.1.1 dev eth0 metric 0
Windows实例修改网卡路由
远程连接云服务器并登录,具体操作请参考登录Windows实例。
打开Windows实例的cmd.exe命令提示符窗口。
执行如下命令,查看当前网卡路由信息。
route print
私网路由如下,可以看到实例对172.16.100.0/24或其他目的网段的访问,存在主网卡和辅助网卡的等价路由。您可以根据业务场景对路由进行自定义,指定访问某段目的地址时的路由转发策略。
公网路由如下,可以看到网卡启用后默认会存在两条公网路由,当您根据业务场景为某网卡绑定公网IP后,需要手动指定访问公网时的路由转发策略,如果同时存在多个相同公网目的地址的路由策略,访问公网时可能会因为路由到其他网卡导致访问失败。
指定路由转发策略。
执行如下命令,查看当前路由是否符合需求;如果不符合需求,可以参考如下步骤增删路由转发策略。
route print
增加路由转发策略:
单击云服务器实例 > 设备管理页签,查看网卡的Mac地址。
执行如下命令,通过Mac地址查看待配置网卡的接口号。
route print
执行如下命令,添加路由。
route add 0.0.0.0 mask 0.0.0.0 172.16.100.1 metric 100 IF 9 -p
add后用于指定目的地址,必填。
mask用于指定目的地址的掩码,必填。
掩码后用于指定网卡的网关地址,必填。
metric用于指定路由跳数,表示到达目的地址需要经过的跃点数量,选填。metric数值越大,表示该条路由的优先级越低。
IF用于指定网卡,选填。如果不配置IF,则默认匹配最佳网卡。
-p用于设置永久路由,选填。若已配置,则重启云服务器后,修改依然有效;若未配置,则重启云服务器后,修改自动失效。
执行如下命令,删除路由转发策略。
route delete 0.0.0.0 mask 0.0.0.0 172.16.100.1
通过脚本修改路由
CentOS/RHEL/Rocky Linux/AlmaLinux
CentOS 7.1
执行如下命令,新建/etc/sysconfig/network-scripts/route-<网络接口>文件。
vim /etc/sysconfig/network-scripts/route-eth1
按i键进入编辑模式,新增如下内容,配置路由。
0.0.0.0/0 via 192.168.2.1 dev eth1 metric 98
按esc键退出编辑,输入:wq按回车键,保存并退出文件。
同理为eth0配置路由。
执行如下命令,重启云服务器。
reboot
执行如下命令,查看路由。
route -n
以CentOS Stream 9/RHEL 9/CentOS Stream 8/CentOS 8/RHEL 8/Rocky Linux/AlmaLinux为例,操作步骤如下:
创建路由配脚本件。
执行如下命令,新建route_config.sh脚本文件。
vim /root/route_config.sh
按i键进入编辑模式,复制如下内容粘贴入文件。
#!/bin/bash function add_ip_route() { local retries=0 until /usr/sbin/ip -4 route add default via 192.168.***.**1 dev eth1 table 100; do ((retries++)) if [ $retries -gt 10 ]; then echo "Add IP route failed." return 1 fi sleep 3 done return 0 } function add_ip_rule() { local retries=0 until /usr/sbin/ip -4 rule add from 192.168.***.4 lookup 100; do ((retries++)) if [ $retries -gt 10 ]; then echo "Add IP rule failed." return 1 fi sleep 3 done return 0 } add_ip_route if [ $? -ne 0 ]; then exit 1 fi add_ip_rule if [ $? -ne 0 ]; then exit 1 fi
辅助网卡名:eth1。
网关地址:192.168.***.**1。
辅助网卡主IPV4地址:192.168.***.4。
按esc键退出编辑,输入:wq按回车键,保存并退出文件。
执行如下命令,为脚本文件添加可执行权限。
chmod +x route_config.sh
执行如下命令,配置默认路由。
sh /root/route_config.sh
配置开机自动更新路由。
执行如下命令,打开/etc/rc.local文件。
vim /etc/rc.local
按i键进入编辑模式,添加如下内容。
sh /root/route_config.sh
按esc键退出编辑,输入:wq按回车键,保存并退出文件。
执行如下命令,为脚本文件添加可执行权限。
chmod +x /etc/rc.local
执行如下命令,重启云服务器。
reboot
执行如下命令,查看配置的路由与IP规则。
ip route list table 100 && ip rule list
Ubuntu
以Ubuntu 16.04LTS为例,操作步骤如下:
执行如下命令,打开 /etc/network/interfaces.d/50-cloud-init.cfg文件,为eth0添加路由。
vi /etc/network/interfaces.d/50-cloud-init.cfg
按i进入编辑模式,并添加如下内容:
up ip -4 route add 0.0.0.0/0 via 192.168.1.1 dev eth0 metric 99
按esc键退出编辑,输入:wq按回车键,保存并退出文件。
执行如下命令,打开 /etc/network/interfaces.d/eth1-multic-hotlog文件,为eth1添加路由。
vi /etc/network/interfaces.d/eth1-multic-hotlog
按i进入编辑模式,并添加如下内容:
up ip -4 route add 0.0.0.0/0 via 192.168.2.1 dev eth1 metric 98
按esc键退出编辑,输入:wq按回车键,保存并退出文件。
执行如下命令,重启云服务器,使配置生效。
reboot
执行如下命令,查看路由。
route -n
以Ubuntu 18.04LTS为例,操作步骤如下:
执行如下命令,打开 /etc/netplan/50-cloud-init.yaml文件,为eth0添加路由。
vim /etc/netplan/50-cloud-init.yaml
按i进入编辑模式,并添加如下图内容:
按esc键退出编辑,输入:wq按回车键,保存并退出文件。
执行如下命令,打开 /etc/netplan/eth1-multic-hotlog.yaml文件,为eth1添加路由。
vi /etc/netplan/eth1-multic-hotlog.yaml
按i进入编辑模式,并添加如下图内容。
按esc键退出编辑,输入:wq按回车键,保存并退出文件。
执行如下命令,重启网络服务,使配置生效。
netplan apply
执行如下命令,查看路由。
route -n
veLinux/Debian
执行如下命令,打开网卡配置文件,为eth0、eth1添加路由。
vi /etc/network/interfaces
按i进入编辑模式,并添加如下图内容。
up ip -4 route add 0.0.0.0/0 via 192.168.1.1 dev eth0 metric 99 up ip -4 route add 0.0.0.0/0 via 192.168.2.1 dev eth1 metric 98
按esc键退出编辑,输入:wq按回车键,保存并退出文件。
执行如下命令,重启网络,使配置生效。
systemctl restart networking
执行如下命令,查看路由。
ip route