UOS多网卡问题需通过合理隔离与路由规划解决,方法包括:一、nmcli分网段配置;二、NetPlan+独立路由表;三、interfaces手动配置;四、Bond主备聚合;五、Bond广播模式。

如果您在UOS系统中部署了多个网卡,但仅有一个网络接口能正常通信或出现路由冲突、默认网关覆盖、内网外网无法同时访问等问题,则很可能是多网卡未进行合理隔离与路由规划。以下是针对多网卡环境的多种配置方法:
一、使用nmcli命令行分网段配置双网卡
该方法通过NetworkManager为每块网卡独立创建连接配置,并分别指定IP地址、子网掩码及可选网关,避免默认网关重复导致的路由混乱。
1、查看当前网卡设备名称:执行 ip link show 命令,确认两块网卡名称(如 eth0 和 eth1)。
2、删除已存在的自动连接配置:执行 nmcli con show 查看所有连接,再依次执行 nmcli con del "有线连接 1" 等命令清除冗余配置。
3、为内网网卡创建静态连接:执行 nmcli con add con-name vlan-inner type ethernet ifname eth0 autoconnect yes ip4 10.0.0.41/24。
4、为外网网卡创建带网关和DNS的连接:执行 nmcli con add con-name vlan-outter type ethernet ifname eth1 autoconnect yes ip4 192.168.1.41/24 gw4 192.168.1.1。
5、为外网连接添加DNS服务器:执行 nmcli con modify vlan-outter +ipv4.dns 222.172.200.68。
6、为内网连接添加静态路由:执行 nmcli con modify vlan-inner +ipv4.routes "10.0.5.0/24 10.0.0.1" 和 nmcli con modify vlan-inner +ipv4.routes "10.0.6.0/24 10.0.0.1"。
7、重启两个连接:依次执行 nmcli con down vlan-inner、nmcli con down vlan-outter、nmcli con up vlan-inner、nmcli con up vlan-outter。
二、通过NetPlan配置双静态网卡与独立路由表
该方法适用于UOS Server版本,利用YAML格式定义网卡参数与高级路由策略,支持为不同网卡绑定独立路由表,实现精确流量分流。
1、编辑NetPlan配置文件:使用root权限打开 /etc/netplan/01-netcfg.yaml。
2、写入双网卡静态配置:填入如下内容(以ens33和ens34为例):
network:\n version: 2\n renderer: networkd\n ethernets:\n ens33:\n dhcp4: no\n addresses: [192.168.1.10/24]\n nameservers:\n addresses: [8.8.8.8, 8.8.4.4]\n ens34:\n dhcp4: no\n addresses: [192.168.2.10/24]\n nameservers:\n addresses: [114.114.114.114]
3、保存文件后,执行 sudo netplan apply 应用配置。
4、创建独立路由表标识:向 /etc/iproute2/rt_tables 追加一行 10 table_ens34。
5、为ens34添加专属默认路由:执行 ip route add default via 192.168.2.1 dev ens34 table table_ens34。
6、添加源地址路由规则:执行 ip rule add from 192.168.2.10 lookup table_ens34。
三、手动编辑interfaces文件配置双网卡(传统方式)
该方法绕过NetworkManager,直接操作底层网络服务,适用于禁用NM或需长期稳定运行的服务器场景,所有配置持久化且不依赖图形界面。
1、停止NetworkManager服务:执行 sudo systemctl stop NetworkManager 并执行 sudo systemctl disable NetworkManager。
2、编辑接口配置文件:使用root权限打开 /etc/network/interfaces。
3、写入两块网卡的静态配置(示例):
auto ens33\niface ens33 inet static\n address 192.168.1.100\n netmask 255.255.255.0\n gateway 192.168.1.1\n dns-nameservers 8.8.8.8\n\nauto ens34\niface ens34 inet static\n address 192.168.2.100\n netmask 255.255.255.0
乐彼多用户商城系统,采用ASP.NET分层技术和AJAX技术,运营于高速稳定的微软.NET+MSSQL 2005平台;完全具备搭建超大型网络购物多用户网上商城的整体技术框架和应用层次LBMall 秉承乐彼软件优秀品质,后台人性化设计,管理窗口识别客户端分辨率自动调整,独立配置的菜单操作锁,使管理操作简单便捷。待办事项1、新订单、支付、付款、短信提醒2、每5分钟自动读取3、新事项声音提醒 店铺管理1
4、注意:仅保留一个网卡配置含 gateway 行,防止默认路由冲突。
5、重启网络服务:执行 sudo systemctl restart networking.service。
6、验证路由表:执行 ip route show,确认仅存在一条默认路由,其余为直连路由。
四、配置Bond聚合网卡(主备模式)
该方法将两块物理网卡逻辑绑定为一个bond0接口,实现链路冗余,在一块网卡故障时自动切换,提升网络可用性,适用于关键业务服务器。
1、安装bonding工具:执行 sudo apt install ifenslave。
2、加载bonding内核模块:执行 echo "bonding mode=1 miimon=100" | sudo tee /etc/modules。
3、创建modprobe别名配置:执行 echo "alias bond0 bonding" | sudo tee /etc/modprobe.d/aliases-bond.conf,并追加 options bonding mode=1 miimon=100。
4、编辑interfaces文件:添加以下内容(假设绑定enp5s0f0与enp5s0f1):
auto bond0\niface bond0 inet static\n address 192.168.1.240\n netmask 255.255.255.0\n gateway 192.168.1.1\n slaves enp5s0f0 enp5s0f1\n bond_mode active-backup\n bond_miimon 100
5、禁用原物理网卡自动启动:在interfaces中注释或删除对应 auto enp5s0f0 等行。
6、重启网络服务:执行 sudo systemctl restart networking.service。
7、验证bond状态:执行 cat /proc/net/bonding/bond0,确认Active: enp5s0f0 且 MII Status: up。
五、配置Bond聚合网卡(广播模式)
该方法使所有数据包同时从所有slave网卡发出,适用于对单点故障容忍度极高、且交换机支持广播转发的特定安全审计或日志采集场景。
1、确保已安装ifenslave:执行 sudo apt install ifenslave。
2、配置内核模块参数:执行 echo "bonding mode=3 miimon=100" | sudo tee /etc/modules。
3、设置modprobe选项:在 /etc/modprobe.d/aliases-bond.conf 中写入 alias bond0 bonding 和 options bonding mode=3 miimon=100。
4、修改interfaces配置:使用与主备模式相同的bond0结构,但将 bond_mode 改为 broadcast 或数值 3。
5、确保交换机端口已配置为接受广播帧,否则接收端无法正确解析重复数据包。
6、应用配置:执行 sudo systemctl restart networking.service。
7、检查bond0接口状态:执行 ip link show bond0,确认其处于UP状态且MTU为1500。








