Какое из моих сетевых устройств используется для создания/поддержания соединения?

Какое из моих сетевых устройств используется для создания/поддержания соединения?

Если у меня два сетевых устройства, как узнать, какое из них используется для запрошенного исходящего соединения?

С этим :

ip r
  default via 10.0.0.1 dev wlp3s0 proto static 
  default via 10.0.0.1 dev wlx00e04c221395 proto dhcp src 10.0.0.143 metric 600 
  10.0.0.0/24 dev wlp3s0 proto kernel scope link src 10.0.0.120 
  10.0.0.0/24 dev wlx00e04c221395 proto kernel scope link src 10.0.0.143 
  10.0.0.1 dev wlx00e04c221395 proto dhcp scope link src 10.0.0.143 metric 600 

У меня два defaultмаршрута. Будет ли система всегда использовать первый, как указано в ip rкоманде?

решение1

Проверьте таблицу маршрутизации с помощью следующей команды:Метрическаястолбец обычно решает, каковы приоритеты маршрутизации,

$ route -n

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.42.0.2       0.0.0.0         UG    50     0        0 eth1
0.0.0.0         10.42.0.1       0.0.0.0         UG    100    0        0 eth0

Этот приоритет зависит от последовательности появления интерфейсов после перезагрузки/запуска, вы также можете повлиять на приоритет с помощью следующей команды:

sudo ifmetric <interface> <priority>

решение2

Я думаю, что обсуждение в комментариях к другому ответу заслуживает отдельного ответа:

Во-первых, хотя вы можете просмотреть таблицу маршрутизации с помощью ip routeили route -nи самостоятельно решить, что, скорее всего, произойдет, проще просто попросить ядро ​​с помощью ip route get a.b.c.dпросмотреть таблицы маршрутизации (да, в современной системе Linux больше таблиц, и route -nотображается только главная таблица) и сообщить вам результат.

Во-вторых, практическое правило проектирования сети заключается в следующем: «каждый хост получает толькоодинокийсетевой интерфейс в каждую подсеть, к которой он подключен». Здесь виртуальные машины, сетевые пространства имен и т. д. считаются дополнительными «хостами», даже если они работают на одном и том же оборудовании.

Следствием этого является «нет, вы не назначаете несколько адресов IPv4 одному и тому же сетевому интерфейсу» (если только вы не знаете, что делаете, но в таком случае вы делаете это на свой страх и риск).

Причина в том, что ничего не выиграешь, сделав подсеть доступной через разные сетевые интерфейсы: так или иначе она попадет в ту же подсеть.

Если вы нарушаете эти правила, как вы сделали выше, и у вас, по-видимому, есть две беспроводные локальные сети, подключенные к одной и той же подсети:

10.0.0.0/24 dev wlp3s0 proto kernel scope link src 10.0.0.120 
10.0.0.0/24 dev wlx00e04c221395 proto kernel scope link src 10.0.0.143 

то что происходит не определено. Как вы можете видеть, ядро ​​Linux с радостью выбирает один из сетевых интерфейсов наугад для назначения 10.0.0.*.

Так что либо они действительно подключаются к двум разным WLAN. В этом случае измените диапазон IP-адресов одной из WLAN, например, на 10.0.1.0/24. Либо это одна и та же WLAN, и в этом случае наличие двух адаптеров WLAN не имеет смысла.

Аналогично с правилом по умолчанию. У вас должно быть только одно правило по умолчанию; наличие нескольких правил означает, что поведение не определено, и правило выбирается случайным образом. Это означает, что пакеты в одном соединении отправляются случайным образом с разными параметрами (например, исходными адресами), а хост, с другой стороны, распознает только один набор параметров (тот, с которым было открыто соединение), отбросит другие пакеты и будет считать отсутствующие пакеты потерянными. Это потому, что стандартные интернет-протоколы являются «односетевыми». Существуют многосетевые протоколы (например, SCTP или многосетевые расширения TCP), но в настоящее время они не используются достаточно широко, чтобы быть полезными.

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

Надеюсь, я ответил на все (или, по крайней мере, на большинство) вопросов, которые вы не задали в своем первоначальном вопросе.

Связанный контент