Я новичок в области сетевых технологий. Допустим, у меня есть две сети, как показано ниже.
- сеть A (192.168.0.103/24) подключена к интерфейсу A
- сеть B (192.168.1.55/24) подключена к интерфейсу B
Что произойдет в следующих сценариях
- Если я сделаю запрос curl на 192.168.0.100, какой из вышеперечисленных интерфейсов будет обрабатывать исходящий трафик и почему?
- Если я сделаю запрос curl на 10.31.17.25, кто будет обрабатывать исходящий? Будет ли этот пакет отброшен?
Можно ли контролировать поведение маршрутизации?
решение1
Все зависит от вашей таблицы маршрутизации. Тип
ip route
или
route -n
Если вы не ошиблись с маршрутом, то ответы на ваши вопросы будут такими:
- Для 192.168.0.100 будет использоваться сеть A, поскольку она находится в той же подсети.
- Для 10.31.17.25 это невозможно определить. Таблица маршрутизации покажет вам, какое устройство используется в качестве шлюза по умолчанию.
Давайте посмотрим на пример вывода route -n
:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 600 0 0 wlp1s0
192.168.1.0 0.0.0.0 255.255.255.0 U 600 0 0 wlp1s0
Первая строка говорит, что весь трафик за пределами моей подсети будет отправлен на шлюз по умолчанию 192.168.1.1 через интерфейс wlp1s0.
Строка, начинающаяся с 192.168.1.0, говорит о том, что весь трафик, соответствующий genmask 255.255.255.0, будет отправлен с интерфейса wlp1s0 напрямую к месту назначения.