Рейтинг:0

Как получить сетевой интерфейс, через который маршрутизируется трафик

флаг cn

Я пытаюсь выяснить, через какой интерфейс маршрутизируется мой трафик, и получить локальный IP-адрес, связанный с этим интерфейсом. Это заставит меня различать случаи, когда доступ к vpn отключен (все идет через wlan0 -> читать ip с этого интерфейса) или когда vpn активирован (все идет через tun0, получает ip этого интерфейса).

Я знаю команду route, но не представляю, как я буду анализировать ее, чтобы извлечь нужную мне информацию.

Это мой список IP-маршрутов без vpn:

по умолчанию через 192.168.26.1 dev wlp0s20f3 proto dhcp metric 600 
169.254.0.0/16 dev wlp0s20f3 метрика ссылки области 1000 
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 
192.168.26.0/23 dev wlp0s20f3 ссылка на протоядро области src 192.168.26.254 метрика 600 

и после подключения к vpn

по умолчанию через 192.168.31.1 dev tun0 proto static metric 50 
по умолчанию через 192.168.26.1 dev wlp0s20f3 proto dhcp metric 600 
10.0.0.0/8 через 192.168.31.1 dev tun0 протостатическая метрика 50 
13.224.73.0/24 через 192.168.31.1 dev tun0 протостатическая метрика 50 
18.135.151.3 через 192.168.31.1 dev tun0 протостатическая метрика 50 
40.114.41.40 через 192.168.31.1 dev tun0 протостатическая метрика 50 
52.95.0.0/16 через 192.168.31.1 dev tun0 протостатическая метрика 50 
104.18.4.20 через 192.168.31.1 dev tun0 протостатическая метрика 50 
104.18.5.20 через 192.168.31.1 dev tun0 протостатическая метрика 50 
104.18.25.245 через 192.168.31.1 dev tun0 протостатическая метрика 50 
104.27.148.109 через 192.168.31.1 dev tun0 протостатическая метрика 50 
104.27.149.109 через 192.168.31.1 dev tun0 протостатическая метрика 50 
143.204.190.0/24 через 192.168.31.1 dev tun0 протостатическая метрика 50 
149.11.92.90 через 192.168.26.1 dev wlp0s20f3 протостатическая метрика 600 
150.2.20.0/24 через 192.168.31.1 dev tun0 протостатическая метрика 50 
150.2.22.0/24 через 192.168.31.1 dev tun0 протостатическая метрика 50 
150.2.34.0/24 через 192.168.31.1 dev tun0 протостатическая метрика 50 
169.254.0.0/16 dev wlp0s20f3 метрика ссылки области 1000 
172.16.0.0/12 через 192.168.31.1 dev tun0 протостатическая метрика 50 
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 
192.168.0.0/16 через 192.168.31.1 dev tun0 протостатическая метрика 50 
192.168.26.0/23 dev wlp0s20f3 ссылка на протоядро области src 192.168.26.254 метрика 600 
192.168.26.1 dev wlp0s20f3 proto static Scope Link метрика 600 
192.168.31.0/24 dev tun0 ссылка на область ядра прото src 192.168.31.56 метрика 50 

Можно ли предположить, что используется верхний маршрут по умолчанию?

флаг ru
Включите вывод `ip route list`, и мы поможем вам его определить.
Рейтинг:1
флаг ru

Получение этих данных состоит из двух частей: во-первых, определение того, какие подсети выходят напрямую через конкретный интерфейс; а затем, во-вторых, определение «маршрута по умолчанию» вашего трафика в Интернет.

(перейдите к разделу «Ваши маршруты», чтобы ознакомиться с выводом ваших маршрутов)

В обоих случаях нам понадобится список IP-маршрутов вывод, но в моем случае мы посмотрим на мой ноутбук (в настоящее время НЕ VPN, потому что я нахожусь в своей домашней сети):

по умолчанию через 172.18.0.1 dev wlp59s0 proto dhcp metric 600 
10.10.0.0/16 dev static-local proto kernel scope link src 10.10.0.1 
10.73.252.0/24 dev Ссылка на прото-область ядра InternalDHCP src 10.73.252.1 
10.74.0.0/24 dev docker0 proto kernel scope link src 10.74.0.1 linkdown 
169.254.0.0/16 dev docker0 метрика ссылки области видимости 1000 linkdown 
172.18.0.0/16 dev wlp59s0 proto kernel scope link src 172.18.2.0 metric 600

Как видите, в моей сети есть несколько разных вещей. У меня есть две подсети докеров, две другие сети (статический локальный и Внутренний DHCP для моих контейнеров LXD), мой беспроводной интерфейс wlp59s0и «маршрут по умолчанию» вверху.

Давайте разберем это на составные части. Начните с просмотра нестандартных маршрутов. Это будет читаться следующим образом:

  • Весь трафик на 10.10.0.0/16 (10.10.0.0-10.10.255.255) идет напрямую через статический локальный сетевая ссылка с исходным IP-адресом 10.10.0.1.
  • Весь трафик на 10.73.252.0/24 (10.73.252.0-10.73.252.255) идет напрямую через Внутренний DHCP сетевая ссылка с источником 10.73.252.1
  • Весь трафик на 10.74.0.0/24 (10.74.0.0-10.74.0.255) идет напрямую через докер0 сетевая ссылка с источником 10.74.0.1. Тот же сетевой канал также принимает трафик для 169.254.0.0/16, однако эта ссылка отключена и не работает.
  • Весь трафик на 172.18.0.0/16 (172.18.0.0-172.18.255.255) идет напрямую через wlp59s0 сетевая ссылка с исходным IP-адресом 172.18.2.0.

Теперь маршрут по умолчанию:

  • Весь остальной трафик, который не соответствует ни одному из других вышеупомянутых маршрутов, должен направляться через адрес шлюза/маршрутизатора 172.18.0.1 через устройство. wlp59s0 (это моя карта Wi-Fi).

Вот как бы вы препарировали список IP-маршрутов вывод, как указано выше. Мы можем помочь вам с разбором вашего список IP-маршрутов вывод, если хотите, однако именно так вы будете читать вывод.


Ваши маршруты

Это мой анализ ваших маршрутов, как при подключении VPN, так и при его отсутствии.

Во-первых, когда вы не в VPN:

  • Трафик на 192.168.26.0/23 (192.168.26.0-192.168.27.255) идет напрямую через ваш интерфейс wlp0s20f3 (wifi). Это включает прямой переход к 192.168.26.1 (маршрут по умолчанию).
  • Трафик на 149.11.92.90 уходит через 182.168.26.1 напрямую через ваш интерфейс Wi-Fi.
  • Трафик на 172.17.0.0/16 (172.17.0.0-172.17.255.255) идет напрямую по сетевой ссылке docker0 с исходным IP-адресом 172.17.0.1.
  • Что-то не так с вашим сетевым соединением, поэтому 169.254.0.0/16 (169.254.0.0-169.254.255.255) выходит через Wi-Fi-устройство по ссылке.
  • Для любых других обозначений подсети, когда вы не используете VPN, ваш трафик проходит через ваш интерфейс Wi-Fi через IP-адрес шлюза 192.168.26.1 (ваш маршрутизатор).

Теперь, когда вы используете VPN, в вашу таблицу добавляется МНОГО маршрутов, которые не имеют смысла, но мы можем объединить их в один простой способ оценки правил. Обратите внимание, что по-прежнему применяются предыдущие правила без подключения к VPN:

  • При подключении к VPN весь трафик, на который не распространяются предыдущие правила подключения к сети (включая правила, когда вы не подключены к VPN), направляется через устройство tun0 и канал VPN через 192.168.31.1 через туннель. . Таким образом, весь трафик в Интернет (кроме адресов по ссылке, как указано выше) будет сначала проходить через VPN-туннель. Если соединение с туннелем VPN выходит из строя и трафик не может пройти через этот туннель, он вернется к использованию вашего стандартного соединения Wi-Fi (однако это произойдет только в том случае, если туннель VPN выйдет из строя и НЕ переподключится, поэтому тун0 интерфейс исчезнет)

  • Трафик между вашей системой и конечной точкой VPN проходит по каналу Wi-Fi по умолчанию для достижения удаленного VPN-сервера. (это поведение «по умолчанию», так как для подключения к VPN-серверу будет использоваться ваша Wi-Fi-ссылка по умолчанию).

флаг cn
Спасибо, Томас, я обновил свой вопрос маршрутами.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.