Я посмотрел на самые актуальные вопрос, и я на шаг впереди, но не знаю, что делать дальше.
В настоящее время я пытаюсь подключить два интерфейса Ethernet, но не могу установить соединение с обоими интерфейсами одновременно. Когда подключаю второй интерфейс enx000acd2f045e
моя связь через enp0s31f6
к инету отключен. И, в отличие от приведенного ответа, ни одна из моих сетей не отключается при запуске sudo lshw -c network
.
$ sudo lshw -c network
[sudo] password for maxgitt:
*-network
description: Ethernet interface
product: Ethernet Connection (5) I219-LM
vendor: Intel Corporation
physical id: 1f.6
bus info: pci@0000:00:1f.6
logical name: enp0s31f6
version: 00
serial: 50:9a:4c:18:ad:9f
size: 1Gbit/s
capacity: 1Gbit/s
width: 32 bits
clock: 33MHz
capabilities: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.2.6-k duplex=full firmware=0.1-4 ip=130.207.34.53 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
resources: irq:138 memory:f7100000-f711ffff
*-network
description: Ethernet interface
physical id: 1
bus info: usb@2:3.1
logical name: enx000acd2f045e
serial: 00:0a:cd:2f:04:5e
size: 1Gbit/s
capacity: 1Gbit/s
capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=ax88179_178a duplex=full ip=192.168.3.4 link=yes multicast=yes port=MII speed=1Gbit/s
В ответе упоминалась проверка моей таблицы маршрутизации, в которой говорилось, что у меня не может быть более одного шлюза. Итак, я запустил следующее:
Перед подключением к enx000
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 130.207.34.1 0.0.0.0 UG 100 0 0 enp0s31f6
130.207.34.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s31f6
143.215.251.5 130.207.34.1 255.255.255.255 UGH 100 0 0 enp0s31f6
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 enp0s31f6
После подключения к enx000
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.3.3 0.0.0.0 UG 0 0 0 enx000acd2f045e
0.0.0.0 130.207.34.1 0.0.0.0 UG 100 0 0 enp0s31f6
130.207.34.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s31f6
143.215.251.5 130.207.34.1 255.255.255.255 UGH 100 0 0 enp0s31f6
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 enp0s31f6
192.168.3.0 0.0.0.0 255.255.255.0 U 0 0 0 enx000acd2f045e
Наконец, он заявляет: «Если у вас два шлюза, в вашей таблице маршрутизации будет двойная запись для dest 0.0.0.0, и система не сможет с этим справиться». Я относительно новичок в сетях и не уверен, что могу сделать, чтобы это исправить. Похоже, у меня может быть конфликт в первых двух строках моей таблицы маршрутизации.
/etc/network/interfaces
, похоже, что в последних версиях Ubuntu это нечасто используется, не говоря уже о 16.04. Ответ, который вы цитируете, указал вам на проблему - она находится в таблице маршрутизации. Что происходит, у вас созданы два «маршрута по умолчанию» (маршрут 0.0.0.0). Это маршрут, который совпадает, если другого не найдено, отсюда и имя по умолчанию.
В вашем случае, как только второй интерфейс будет запущен, вы увидите два маршрута по умолчанию, и система использует первый, который соответствует, следовательно, адаптер enxXXX.
Упрощенно сказать, что у вас не может быть двух маршрутов по умолчанию, потому что все возможно, и вы можете сбалансировать трафик между ними, но для ваших целей кажется, что вы действительно хотите использовать только оригинальный интерфейс enpXXX для своего интернет-трафика? И есть только трафик LAN через другой интерфейс?
Это просто сделать - вам нужно отключить адаптер enxXXX, являющийся маршрутом по умолчанию (это добавит маршрут к локальной сети, но не к миру 0.0.0.0), или установить порядок маршрутизации, чтобы интерфейс enpXXX был первым в таблице маршрутизации. .
Здесь есть хорошее описание того, как использовать несколько сетевых адаптеров с Ubuntu: https://askubuntu.com/questions/310355/networking-with-multiple-nics
Спасибо за ссылку. Это помогло мне решить проблему. Я должен был добавить шлюз по умолчанию в мою таблицу маршрутизации ранее. Вы можете проверить и убедиться, что при запуске ip route show
что у вас есть только 1 шлюз по умолчанию:
Перед
$ ip route show
default via 192.168.3.3 dev enx000acd2f045e proto static
default via 130.207.34.1 dev enp0s31f6 proto static metric 100
Все, что мне нужно было сделать, это удалить второй маршрут через:
sudo route del default gw 192.168.3.3 enx000acd2f045e
После
$ ip route show
default via 130.207.34.1 dev enp0s31f6 proto static metric 100