Linux系统中网线与USB网络共享冲突

博客地址:https://www.cnblogs.com/zylyehuo/

问题描述

网络管理器配置了"互斥连接"
有些配置会写成: 插入 USB 网络后,关闭 eth0
有线和usb共享网路,使用同一个网络协议,修改一个的时候会同时把另一个改了
系统把它们当成了同一个网络配置文件在管理。

给两张网卡创建两个独立配置

bash 复制代码
nmcli device status
nmcli connection show

看到类似:

bash 复制代码
DEVICE    TYPE      STATE        CONNECTION
eth0      ethernet  connected    Wired connection 1
usb0      ethernet  connected    Wired connection 1

绑定到具体网卡名
假设

bash 复制代码
有线网卡:eth0
USB共享:usb0

给有线网口创建固定 IP 配置

bash 复制代码
sudo nmcli connection modify eth0-static \
  ipv4.method manual \
  ipv4.addresses 172.16.2.80/24 \
  ipv4.gateway 172.16.2.1 \
  ipv4.never-default no \
  ipv4.ignore-auto-routes no \
  ipv4.route-metric 500 \
  connection.autoconnect yes

eth0 只负责 172.16.2.x 局域网,不抢默认网关,不负责上网

给 USB 共享网络创建单独配置

bash 复制代码
sudo nmcli connection add type ethernet ifname usb0 con-name usb-tether
bash 复制代码
sudo nmcli connection modify usb-tether \
  ipv4.method auto \
  ipv4.never-default no \
  ipv4.ignore-auto-routes no \
  ipv4.route-metric 50 \
  connection.autoconnect yes

重启两个连接

bash 复制代码
sudo nmcli connection down eth0-static
sudo nmcli connection down usb-tether
bash 复制代码
sudo nmcli connection up eth0-static
sudo nmcli connection up usb-tether

调整路由优先级 metric

希望 USB 共享网络负责上网

bash 复制代码
sudo nmcli connection modify usb-tether ipv4.route-metric 100
sudo nmcli connection modify ST1030 ipv4.route-metric 500

看系统准备从哪张网卡访问 8.8.8.8

bash 复制代码
ip route get 8.8.8.8
bash 复制代码
nvidia@EAORA04:~$ ip route get 8.8.8.8
8.8.8.8 via 10.163.44.252 dev usb0 src 10.163.44.216 uid 1000 
    cache 
相关推荐
是个西兰花29 分钟前
Linux:深入解析Linux线程原理与实现
linux·运维·c++·线程·互斥锁
运维大师1 小时前
【Linux运维极简教程】07-磁盘管理与LVM
linux·运维·服务器
乖巧的妹子1 小时前
刷题总结知识
linux·服务器·windows
拳里剑气2 小时前
Linux:基础IO
linux·运维·服务器·io
小小龙学IT2 小时前
Day 2-3:Linux 文件与目录操作
linux
三8442 小时前
基本Linux命令总结
linux·运维·服务器
hehelm3 小时前
AI 大模型接入 SDK —项目概述
linux·服务器·网络·数据库·c++
mounter6253 小时前
跨越鸿沟:从内核驱动开发到超大规模云端生产环境的思考
linux·驱动开发·linux kernel·kernel
kdxiaojie4 小时前
Linux 驱动研究 —— V4L2 (3)
linux·运维·笔记·学习
dddwjzx5 小时前
嵌入式Linux C应用编程——GPIO
linux·嵌入式