碰到的情况是,板卡上一个wlan一个eth0,有线接的摄像头,连了有线就上不了网。
Ubuntu持久化route配置
Ubuntu/Linux Mint/Ukylin/国产麒麟系统中开机执行route命令,只需要直接修改/etc/rc.local
文件,把需要开机自动执行的命令写在exit 0
前面:
(
sleep 30
/usr/sbin/route del default gw 192.168.1.1 eth0
/usr/sbin/route add default gw 192.168.1.1 dev eth0 metric 204
/usr/sbin/route del default gw 192.168.1.1 eth0
/usr/sbin/route add default gw 192.168.1.1 dev eth0 metric 204
) &
Debian/Kali/Raspberry Pi持久化route配置
从Debian 9
起,Debian
自带rc-local
服务,但是默认没有启动,也没有/etc/rc.local
文件。
首先确认rc-local
服务是否启动。执行systemctl status rc-local
,如果显示Active: inactive (dead)
即没有启动。
添加/etc/rc.local
并修改内容(touch /etc/rc.local && vim /etc/rc.local
),把需要开机自动执行的命令写在exit 0
前面:
#!/bin/sh -e
(
sleep 30
/usr/sbin/route del default gw 10.10.11.250 eth0
/usr/sbin/route add default gw 10.10.11.250 dev eth0 metric 204
) &
exit 0
给该文件配置可执行权限:chmod +x /etc/rc.local
。
启动rc-local
服务并设置该服务开机自启:
systemctl enable rc-local
systemctl start rc-local
lubuncat4配置
持久化的办法前面有。
下面是我配置好优先级后的路由表情况。
default
:表示默认网关,当目标地址不在本地网络时,数据包会通过这个网关发送出去。 也就是外网的优先级。
192.168.1.0:这是本地网络的子网地址,子网掩码是255.255.255.0,表示本地网络的范围是192.168.1.0到192.168.1.255。 数据包如果目标地址在范围内,由对应接口发送。
也就是内网的优先级。
UG:表示这是一个到网关(Gateway)的路由,U表示路由是启用的。
Metric:表示路由的优先级。
Iface:网络接口名称。
cat@lubancat:~$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 192.168.1.1 0.0.0.0 UG 10 0 0 wlan0
default 192.168.1.1 0.0.0.0 UG 100 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 10 0 0 wlan0
192.168.1.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
注意如果用内网ip走ssh,就要配置好内网优先级。外网对应。
常用指令
#查看网络配置
route
#删除外网
sudo route del default gw 192.168.1.1 dev wlan0 metric 10
#添加外网
sudo route add default gw 192.168.1.1 dev wlan0 metric 10
#删除内网
sudo route del -net 192.168.1.0 netmask 255.255.255.0 dev wlan0 metric 10
#添加内网
sudo route add -net 192.168.1.0 netmask 255.255.255.0 dev wlan0 metric 10
最好是把指令做成shell脚本。持久化方式我试了没用。