Я хочу, чтобы мое соединение ppp0 имело более высокий приоритет по сравнению с wlan0. Я добавил следующие строки в файл /etc/network/interfaces
.
iface wlan0 inet dhcp
up ifmetric wlan0 20
----------------------------------------------------------------------------
#route table after modifying
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.43.1 0.0.0.0 UG 20 0 0 wlan0
169.254.0.0 0.0.0.0 255.255.0.0 U 20 0 0 wlan0
192.168.43.0 0.0.0.0 255.255.255.0 U 20 0 0 wlan0
220.224.141.145 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
Как видите, метрика wlan0 изменилась на 20, но все же она предпочтительнее ppp0 в качестве шлюза по умолчанию. Когда я проверял справочную страницу маршрута, упоминалось, что «метрика не использовалась последними ядрами».
Я могу изменить маршрут вручную, удалив ненужный gw и добавив ppp0 как gw. Но когда wlan0 отключается и повторно подключается, таблица маршрутизации изменяется на значение по умолчанию. Как я могу установить свой ppp0 в качестве gw навсегда?
У Вас есть несколько возможностей изменить маршрут по умолчанию.
Хорошее место для этого вида действия находится в /etc/network/if-down.d/
или /etc/network/if-up.d/
Вы можете в этой папке помещать некоторый сценарий и делать действие. Например, вставьте этот сценарий /etc/ppp/if-up.d/
заставить значение по умолчанию направить к ppp0
взаимодействуйте через интерфейс каждый раз, когда повышаются, сделайте сценарий названным script
с выполняют полномочия 755
sudo nano /etc/ppp/if-up.d/script
# Check for specific interface if desired
[ "$IFACE" != "ppp0" ] || exit 0
# Do something
sudo route add default dev ppp0
chmod 755 /etc/ppp/if-up.d/script
Во втором случае wifi
повторно подключите, сделайте еще один сценарий иначе script2
sudo nano /etc/network/if-up.d/script2
# Check for specific interface if desired
[ "$IFACE" != "wlan0" ] || exit 0
# Do something
sudo route add default dev ppp0
Это будет если wlan0
поднимитесь маршрут значения по умолчанию набора к ppp0
, если ppp0
вниз маршрут не будет изменен от wlan0
.
Попробовать.
Редактирование 1
На основе интернет-исследования, для ppp0
соедините интерфейсом с Вами сценарий перемещения в /etc/ppp/if-up.d