eu tenho uma placa com linux-3.20 e tem módulos 4G. Quando eu inicio eu posso executar "pppd call quectel-ppp &" obter uma interface ppp0.tenho também interface eth0 / eth1, eth0 pode se conectar à internet, agora eu quero conectar-me à internet por eth0 (prioridade) ou ppp0, meu roteiro show
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 eth0
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 eth1
10.64.64.64 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
agora se eu quiser usar o eth0 conectar a Internet, eu devo executar route del -net 0.0.0.0 netmask 0.0.0.0 dev eth0
e route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.2.1 dev eth0
, se eu quiser usar ppp0, eu devo executar route del default
e route add default dev ppp0
para criar um script de shell
while true
do
#eth0 can ping,use eth0
route del -net 0.0.0.0 netmask 0.0.0.0 dev eth0
route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.2.1 dev eth0
ping -c 1 -w1 -I eth0 unix.stackexchange.com
if [[ $? != 0 ]];then
#eth0 error,use ppp0 if ppp0 up
if ifconfig |grep ppp0;then
route del default
route add default dev ppp0
fi
fi
sleep 10;
done
funciona, mas fará com que o net pack perca muito também, então posso criar uma tabela de rotas conectando a internet por eth0 priority e ppp0 second (se eth0 not link ou eth0 cant connect internet) automática?
Tags networking ethernet interface ppp linux