Изменить маршруты по умолчанию в Ubuntu?

0

Я пытаюсь изменить порядок маршрута маршрута.

$ route -n

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.42.0.1       0.0.0.0         UG    100    0        0 enp5s0
0.0.0.0         172.16.0.1      0.0.0.0         UG    600    0        0 wlp4s0
10.42.0.0       0.0.0.0         255.255.255.0   U     100    0        0 enp5s0
172.16.0.0      0.0.0.0         255.255.255.0   U     600    0        0 wlp4s0

$ cat /etc/resolv.conf 

# this file is automatically created by NetworkManager
nameserver 10.42.0.1
nameserver 172.16.0.1

Specs:

$ lsb_release -a

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.3 LTS
Release:    16.04
Codename:   xenial

Мне нужен сначала пробный маршрут wlp4s0 (беспроводной), потом пробовал маршрут enp5s0 (ethernet). Так это выглядит так:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         172.16.0.1      0.0.0.0         UG    600    0        0 wlp4s0
0.0.0.0         10.42.0.1       0.0.0.0         UG    100    0        0 enp5s0

nameserver 172.16.0.1
nameserver 10.42.0.1

Как мне этого добиться?

редактировать:

Я бы хотел, чтобы интернет-трафик постоянно проходил через беспроводной интерфейс wlp4s0. Интерфейс enp5s0 - это кабель Ethernet, который я подключил к Raspberry Pi. Я пытаюсь регулярно SSH в пи через Ethernet, но все еще доступ в интернет через Wi-Fi

user864158
источник
Вы хотите, чтобы весь интернет-трафик проходил через беспроводной интерфейс и использовал Ethernet только для определенных сетей?
mtak
Спасибо за ваш ответ! Я бы хотел, чтобы интернет-трафик постоянно проходил через беспроводной интерфейс wlp4s0. Интерфейс enp5s0 - это кабель Ethernet, который я подключил к Raspberry Pi. Я пытаюсь регулярно SSH в пи через Ethernet, но все еще доступ в интернет через Wi-Fi
user864158
1
Тогда вы должны спросить это. xyproblem.info
mtak

Ответы:

1

Если вы хотите использовать Ethernet только для локального трафика, полностью отключите шлюз по умолчанию на интерфейсе Ethernet. Это не обязательно для трафика внутри подсети (шлюз используется для всего трафика, который идет вне подсеть).

Вы можете сделать это временно:

$ sudo ip route delete default via 10.42.0.1 

Более постоянное решение зависит от того, как вы настроили IP-интерфейс. Если это настроено с /etc/network/interfaces, отключите запись шлюза, например:

auto enp5s0
iface enp5s0 inet static
address 10.42.0.x
netmask 255.255.255.0
# gateway 10.100.0.1

Если вы настроили его через графический интерфейс, вы сможете найти его в диалоговом окне конфигурации сети.

mtak
источник
Благодарю. ip route delete default via 10.42.0.1 работал, но изменение файла интерфейсов не. Я изменил «10.42.0.x» на «10.42.0.4», доступный адрес, но не внес никаких других изменений в предложенные вами строки. Есть идеи, почему это не сработало?
user864158
Изменение в /etc/network/interfaces вступает в силу только после перезагрузки или systemctl restart network, service network restart или же /etc/init.d/networking restart (в зависимости от вашей версии Ubuntu). Не волнуйся, ip route delete исправил это сейчас и /etc/network/interfaces изменения исправляют это при следующей загрузке.
mtak