36

В моем офисе есть спор о том, насколько умной / эффективной является сеть, которую мы создали.

У нас есть волоконная линия и кабельная линия, идущие к маршрутизатору с балансировкой нагрузки, который имеет аппаратный брандмауэр, к которому, наконец, подключен 64-портовый коммутатор.

Каждая из наших рабочих станций подключена к коммутатору (около 30 машин), а также к NAS и нескольким внутренним тестовым серверам (всем назначены адреса 192.168.0.x).

Если рабочая станция A хочет связаться с рабочей станцией B, достаточно ли умна наша сеть для работы:

A → Переключатель → B и только через первое наиболее распространенное соединение,

или путь будет A → Коммутатор → Брандмауэр → Маршрутизатор → Брандмауэр → Коммутатор → B и придется каждый раз проходить этот полный маршрут?

4 ответа4

73

Маршрутизаторы не нужны, если ваш трафик не должен перемещаться в другую подсеть. Когда компьютер хочет отправить некоторый IP-трафик на другой компьютер в своей подсети, ему нужен MAC-адрес получателя, поскольку IP-адреса не являются чем-то на уровне коммутатора (уровень 2 модели OSI). Если он не знает MAC-адрес, он передает запрос ARP , говоря:«Эй, кто бы ни имел этот IP-адрес, не могли бы вы сказать мне свой MAC-адрес, пожалуйста?«Когда машина получает ответ, этот адрес затем присоединяется к пакету, и коммутатор использует его для отправки пакета на правильный физический порт.

Когда пункт назначения не находится в той же подсети, маршрутизаторы должны участвовать. Отправитель передает пакет соответствующему маршрутизатору (обычно это шлюз по умолчанию, если у вас нет особых потребностей в маршрутизации), который отправляет его через сеть предполагаемому получателю. В отличие от коммутаторов, маршрутизаторы знают и имеют IP-адреса, но у них также есть MAC-адреса, и это MAC-адрес, который изначально помещается в пакеты, требующие маршрутизации. (MAC-адреса никогда не покидают подсеть.)

Вы можете увидеть IP-адреса маршрутизатора в столбце Шлюз вывода route print в Windows. На направлениях, которые не требуют маршрутизации, есть On-link .

29

Если 2 компьютера подключены к одному и тому же vlan на коммутаторе и используют одну и ту же маску подсети - коммутатор должен доставить пакет, не затрагивая брандмауэр или маршрутизатор.

Вы можете убедиться в этом, запустив tracert 192.168.0.X (при условии Windows), и вы должны увидеть прямой маршрут к этой системе.

19

Почти наверняка, коммуникационный путь будет A ↔︎ switch ↔︎ B, не проходящий через брандмауэр и маршрутизатор. Предполагая, что рабочие станции A и B имеют IP-адреса с одинаковой сетью и маской сети, они должны иметь возможность взаимодействовать без участия маршрутизатора, поскольку коммутатор знает, как пересылать пакеты. Вы должны быть в состоянии проверить, что между A и B нет промежуточных переходов, запустив traceroute ip_address_of_B из командной строки на A. (В Windows команда будет tracert вместо traceroute .)

Тем не менее, альтернативные сценарии возможны, но менее вероятны.

В прежние времена, до появления Ethernet-коммутаторов, существовали концентраторы Ethernet. Концентраторы работают таким же образом, за исключением того, что они будут интеллектуально дублировать и пересылать входящие пакеты Ethernet через каждый отдельный порт концентратора, а не из соответствующего порта, как это сделал бы коммутатор. Если бы у вас был концентратор вместо коммутатора, то маршрутизатор будет видеть (и игнорировать) весь трафик между А и В. Конечно, такая беспорядочная пересылка пакетов создает много ненужного трафика, и концентраторы Ethernet в наши дни встречаются редко.

Другой возможный (но маловероятный) сценарий состоит в том, что коммутатор может быть настроен для изоляции портов. Это заставило бы трафик каждой рабочей станции проходить через маршрутизатор. Возможно, вы захотите сделать это, если считаете, что рабочие станции враждебны друг другу - например, порты в публичной библиотеке или в отдельных гостиничных номерах - и вы не хотите, чтобы они вообще могли напрямую общаться. Однако в офисной среде очень маловероятно, что ваш сетевой администратор настроил это таким образом.

Чтобы ответить на ваш вопрос с точки зрения непрофессионала: сеть, естественно, должна делать "правильные вещи" в вашем случае. Тем не менее, он может быть намеренно перенастроен на другую "правильную вещь". Как следствие этого, это может быть случайно неверно настроено на глупость.

0

Другие ответы верны. Так что в интересах подтверждения - предлагаю попробовать и выяснить.

tracert или traceroute или tracepath или mtr от одного хоста к другому.

Возьмите запасной (т.е. непроизводственный) компьютер и присвойте ему IP-адрес 192.168.166.x /24 или 255.255.255.0 и шлюз 192.168.166.1.

Вам необходимо настроить устройство брандмауэра, чтобы иметь дополнительный IP-адрес 192.168.166.1 /24 на том же интерфейсе, что и ваша локальная сеть. Будьте осторожны, чтобы не прервать производственный трафик локальной сети в это время. Как именно вы это сделаете, зависит от вашей операционной системы брандмауэра.

Существует вероятность того, что вам может понадобиться настроить или расширить правила брандмауэра для интерфейса локальной сети.

Путь должен быть 166machine-switch-firewall-switch-0machine (но вы не увидите коммутатора в traceroute, потому что коммутаторы Ethernet находятся на уровне 2, а traceroute - ICMP на уровне 3.

Обратите внимание, это называется "оверлейной" сетью и не обеспечивает дополнительной безопасности. Это не DMZ, нет изоляции и не скрывает сеть 166 от сети 0.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .