изменение приоритета сетевого интерфейса

Я хочу, чтобы мое соединение 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 навсегда?

5
задан 22 May 2015 в 11:45

1 ответ

У Вас есть несколько возможностей изменить маршрут по умолчанию.

Хорошее место для этого вида действия находится в /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

3
ответ дан 22 May 2015 в 11:45

Другие вопросы по тегам:

Похожие вопросы: