Зачем нужен роутер?

9632
Maxbit

Я пытался выяснить, зачем нужен роутер. Я знаю, что маршрутизатор может использоваться для DHCP и некоторых других вещей, но я просто думаю о сети со статическими IP-адресами. Итак, следующее:

Можно ли сделать со статическими IP-адресами следующее:

Modem -> Switch -> PCs 

Или вам нужно идти:

Modem -> Router -> Switch -> PCs 

Так что именно делает маршрутизатор и зачем он нужен?

48
Вас больше интересует, зачем нужны маршрутизаторы в целом или зачем нужен ваш дом? grawity 8 лет назад 0
Я думаю, что в целом маршрутизаторы служат точкой доступа, DHCP, брандмауэр и коммутатор, как простое решение для людей, которые не очень разбираются в сетях. Maxbit 8 лет назад 0
Но я хочу знать, если в моем случае нужен маршрутизатор (можно ли перейти: Модем -> Коммутатор -> ПК со статическими IP-адресами или вам нужно перейти: Модем -> Маршрутизатор -> Коммутатор -> ПК) Maxbit 8 лет назад 0
@Maxbit Нет, это именно то, что делают SOHO маршрутизаторы. Daniel B 8 лет назад 6
Хорошо, тогда я хотел бы знать, почему маршрутизаторы вообще нужны, и если мне нужен маршрутизатор в моем сценарии. Maxbit 8 лет назад 1
Зависит от того, предоставляет ли ваш Интернет-провайдер несколько общедоступных IP-адресов для вашего использования, если они это сделают, можно будет использовать коммутатор, а не маршрутизатор. Однако маршрутизатор позволяет вам использовать один общедоступный IP-адрес с несколькими частными IP-адресами. Tyson 8 лет назад 1

6 ответов на вопрос

80
grawity

Я думаю, что в целом маршрутизаторы служат точкой доступа, DHCP, брандмауэр и коммутатор - простым решением для людей, которые мало знают о работе сетей.

Нет, маршрутизаторы - это отдельный вид устройств от точек доступа и коммутаторов. «Маршрутизатор» - это не просто общее имя - он описывает конкретную функцию, маршрутизирующую IP-пакеты между сетями.

Другими словами, вы описываете комбинацию маршрутизатор + коммутатор + точка доступа, которую лучше назвать «маршрутизатор SOHO (малый офис / домашний офис)» или «домашний шлюз».

(Тем не менее, многие специализированные маршрутизаторы действительно имеют встроенный межсетевой экран, а иногда даже сервер DHCP.)

Я хотел бы знать, почему маршрутизаторы вообще нужны

IP-маршрутизация необходима, потому что чистое переключение на уровне Ethernet плохо масштабируется.

Адреса устройств Ethernet назначаются производителем - в них нет полезной структуры; они случайны, насколько сеть обеспокоена. Таким образом, у коммутатора Ethernet есть только два варианта: хранить список каждого отдельного устройства, подключенного к каждому порту (как это делают современные коммутаторы), или просто транслировать каждый пакет на каждый порт (как в оригинальном Ethernet).

Оба метода работают хорошо только до определенного размера сети, но если имеется больше устройств, чем может помнить коммутатор, сеть быстро разрушится. (Похожие темы: CAM исчерпание)

Таким образом, подобно почтовым индексам или телефонной нумерации, IP дает сети структуру - каждой сети, подсети, суперсети назначается кусок адресов, и вы можете описать такие маршруты, как «адреса, начинающиеся с [10.7.xx], могут быть достигнутым через [порт 3] ". Теперь остальному миру не нужно знать о миллионах клиентов Comcast, ему нужно всего лишь несколько маршрутов к самой Comcast.

IP- маршрутизаторы хранят информацию об этих маршрутах и ​​соответственно пересылают все пакеты.

(Такое разделение между Ethernet и IP на самом деле полезно, потому что оно обеспечивает гибкость - один и тот же Ethernet может нести несколько разных протоколов, таких как IPv4, IPv6, возможно IPX ... Некоторые другие протоколы не имеют такого разделения, такие как DECnet или NetBIOS, и они не могли пережить рост сети.)

Можно ли зайти: Модем -> Переключатель -> ПК со статическими IP-адресами

Конечно, технически это возможно. Статические IP-адреса даже не требуются.

Действительно, у интернет-провайдера рядом с моим рабочим местом около 20 бизнес-клиентов по всему городу фактически не имеют своих собственных маршрутизаторов - их «внешние» коммутаторы подключаются напрямую к одному маршрутизатору в здании интернет-провайдера (который даже обслуживает DHCP для всех их), так же, как вы описываете.

Но есть причины, почему это обычно не делается так. (По общему признанию, некоторые из них происходят из-за нехватки адресов IPv4 - таких как NAT. Но многие все еще будут важны даже в мире чистого IPv6.)

  • Как сейчас, провайдер направляет один «глобальный» IP-адрес к вашей сети. Так что, безусловно, вы можете подключить свой ПК напрямую к модему и настроить его по своему «глобальному» адресу. (Скорее всего, это даже автоматически настроить через DHCP.)

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

    Но каждому устройству нужен свой адрес. Поскольку вы получаете только один IPv4-адрес от своего интернет-провайдера, вы можете напрямую подключить один компьютер, но не два, если только вы не заплатите за второй адрес.

    Вот почему ваш домашний маршрутизатор имеет функцию «трансляции сетевых адресов» (иначе говоря, NAT), которая дает вам блок «частных» адресов 192.168.x и скрывает их за одним «глобальным».

    (CGNAT также стоит упомянуть, но исследование оставлено читателю.)

  • Помимо NAT, у вашего «роутера» есть и другие функции, такие как брандмауэр, сервер DHCP, кэш DNS. Да, все это может быть сделано маршрутизаторами интернет-провайдера, но это обойдется интернет-провайдеру и принесет неудобства всем клиентам, не предоставляя никаких преимуществ ни одному из них.

    Брандмауэр должен быть настроен через предоставленный интерфейс вашего интернет-провайдера, и большинство интернет-провайдеров предоставляют только минимальный набор параметров. (При настройке собственного маршрутизатора у меня есть полный контроль - я могу применять правила брандмауэра к необычным протоколам; я могу создать несколько подсетей; я могу экспериментировать с туннелями IPv6 или RIP или OSPF ...)

    И брандмауэр, и NAT нуждаются в ресурсах для отслеживания подключений - некоторый объем памяти, немного мощности процессора. В настоящее время эти ресурсы распределены, так как ваш маршрутизатор должен отслеживать только ваши собственные соединения. Но если бы все было сделано интернет-провайдером, их маршрутизаторам потребовалось бы столько же памяти и процессора, сколько всем маршрутизаторам клиентов вместе, что дорого.

    Сервер DHCP работает намного лучше, когда он на вашей стороне. Даже если интернет-кабель обрезан, ваши собственные устройства могут получать IP-адреса и обмениваться данными локально. (Да, да, статические адреса возможны, но, поверьте мне, это боль в заднице, чтобы отследить.)

    DNS-кеш работает, потому что он у вас дома. Ваш провайдер в любом случае имеет свой собственный кэш DNS, но у вашего маршрутизатора все еще есть свой небольшой кэш, просто потому, что он ближе к вам, обслуживает меньше устройств и, следовательно, может отвечать намного быстрее. (Медленный DNS очень заметен.)

Поэтому причины наличия собственного домашнего маршрутизатора: 1) он быстрее, 2) он дешевле, 3) он проще как для вас, так и для интернет-провайдера.

(Интернет-провайдер, которого я описал ранее? Я не знаю, почему они это делают. Возможно, это отличается, когда у вас всего дюжина клиентов, чем когда у вас много тысяч.)

Комментарии не для расширенного обсуждения; этот разговор был [перемещен в чат] (http://chat.stackexchange.com/rooms/26578/discussion-on-answer-by-grawity-why-is-a-router-needed). Mokubai 8 лет назад 0
5
user2313067

Домашний модем обычно дает вам только один IP-адрес. Маршрутизатор выполняет NAPT (преобразование сетевых адресов), что позволяет вам иметь несколько частных IP-адресов в вашей сети.

Если ваш провайдер предоставляет вам несколько IP-адресов, вы можете обойтись без маршрутизатора на вашей стороне.

Ммм, похоже, у меня плохое понимание сетей. Зачем мне нужно несколько IP-адресов от моего провайдера? Насколько я понимаю, процесс заключается в том, что если компьютер со статическим IP-адресом 192.168.0.10 запрашивает что-то вроде 10.0.0.0, которое не входит в сеть (маска подсети 255.255.255.0), оно будет направлено на шлюз по умолчанию, который должен быть подключен модем в WAN. Зачем мне несколько IP-адресов от моего провайдера для этого? Maxbit 8 лет назад 0
Если модем это делает, это маршрутизатор (со встроенным модемом). Daniel B 8 лет назад 1
@maxbit Если ваш модем не выполняет NAPT сам (что может приблизить его к маршрутизатору), ваш провайдер увидит пакет, поступающий с 192.168.0.10. Однако это частный IP-адрес, который также может использовать ваш сосед (и он, вероятно, использует один в этой подсети), поэтому ответ не знает, как к вам обратиться. На самом деле компьютер, на который вы его отправляете, может иметь тот же IP-адрес. Обычно провайдеры даже отбрасывают пакеты с этих IP-адресов и принимают пакеты только с (публичного) IP-адреса, который они вам дали. Модем просто преобразует одну форму сигнала в другую, они не понимают IP и работают на нижнем уровне. user2313067 8 лет назад 2
Таким образом, используя NAPT, маршрутизатор в основном изменит исходный IP-адрес пакета с 192.168.0.10 на мой общедоступный IP-адрес, если я правильно понял? Maxbit 8 лет назад 0
@Maxbit: да, брандмауэр NAT (то, чем на самом деле являются домашние «маршрутизаторы»), позволяет нескольким компьютерам использовать частные IP-адреса, но транслирует весь восходящий трафик, чтобы он получался с IP-адреса, полученного с помощью DHCP на порту, подключенном к кабелю. модем (это ваш внешний IP). Peter Cordes 8 лет назад 0
@ user2313067: Мой провайдер раздает глобальные адреса IPv4 нескольким подключенным устройствам по одному кабельному модему. Я запускаю брандмауэр NAT в основном для изоляции небезопасного обмена файлами NFS / windows из Интернета. Хотя я мог бы просто использовать обычный брандмауэр, если бы захотел, но у меня уже был настроен NAT до того, как мой интернет-провайдер изменил требование о том, чтобы вы зарегистрировали свой MAC-адрес Ethernet. Peter Cordes 8 лет назад 1
@PeterCordes Я не уверен, что NAT будет рассматриваться как брандмауэр. Этот парень, например, не считает NAT брандмауэром http://blog.webernetz.net/2013/05/21/why-nat-has-nothing-to-do-with-security/ (очень плохая логика / аргументация в его статье, но он, вероятно, вполне осведомлен) И я слышал, что кто-то еще сказал, что это не так. Так что, возможно, есть веские причины, почему это не так barlop 8 лет назад 0
@ barlop: Это правда, моя терминология была небрежной. Вы можете иметь коробку NAT, которая не брандмауэр. Однако у меня есть простая настройка `iptables` на моем Linux NAT / home server box, так что это также брандмауэр. Peter Cordes 8 лет назад 0
@petercordes Я согласен, что в вашем случае вы могли бы обойтись без маршрутизатора, но интернет-провайдеры, передающие несколько общедоступных IPv4 «домашним» клиентам, довольно редкий случай. user2313067 8 лет назад 0
Разве NAPT не превращает устройство в шлюз, а не в маршрутизатор? Hagen von Eitzen 8 лет назад 0
@HagenvonEitzen Нет. Шлюз и маршрутизатор - это одно и то же. Здесь они пытаются провести какое-то различие, но не имеют ничего общего с NAPT https://tools.ietf.org/html/rfc1009 <- «Требования к шлюзам». И этот RFC устарел этим одним https: // tools. ietf.org/html/rfc1812 <- «Требования к маршрутизаторам IPv4» barlop 8 лет назад 0
@ user2313067 Мой провайдер раздает несколько. Но даже если интернет-провайдер раздает только один IP, вы можете обойтись без маршрутизатора, если у вас подключен только один компьютер. Так что на технический вопрос, можете ли вы, ответ - да. barlop 8 лет назад 2
3
moonpoint

У вас дома, скорее всего, есть только один путь для выхода в Интернет через устройство, предоставленное вашим Интернет-провайдером (ISP). Интернет-провайдеру нужен маршрутизаторна другом конце его соединения с вами, тем не менее, который может решить, куда данные из вашей системы идут дальше. Нужно ли ему заходить на один из веб-серверов интернет-провайдера, одну из систем других клиентов, или ему нужно перейти на сервер Google или Microsoft, или ваш IP-адрес назначения указывает на систему в Норвегии и т. Д. ISP будет иметь маршрутизаторы, которые имеют несколько подключений к ним. У него может быть маршрутизатор с каналом, который подключается к сети в Европе, тот, который подключается к сети в Южной Америке и т. Д. И на другом конце этих каналов находятся другие маршрутизаторы, которые могут иметь несколько собственных подключений. Итак, как маршрутизатор вашего интернет-провайдера узнает, на какой маршрутизатор он должен пересылать ваши данные? У него есть роутингтаблица, которая сообщает, какой другой маршрутизатор является следующим «переходом», на который он должен отправить ваши данные. Он не будет знать все промежуточные маршрутизаторы от вашей системы до адреса назначения, поскольку он не знает полного пути от вашей системы до системы назначения, какой из них является лучшим выбором для перемещения ваших данных дальше по пути к месту назначения. Следующий маршрутизатор будет искать в своей собственной таблице маршрутизации, чтобы решить, куда он должен отправить ваши данные. Возможно, он мог бы отправить ваши данные по любому из нескольких подключений, которые у него есть; он будет решать, какой из них использовать, основываясь на " метрике маршрутизации". Будет выбрано соединение с наименьшей метрикой маршрутизации. Но если это соединение прерывается или становится перегруженным, оно может выбрать следующее лучшее соединение на основе своих метрик маршрутизации. Маршрутизаторам вашего интернет-провайдера не нужно постоянно общаться со всеми другими маршрутизаторами в Интернете, им просто нужно знать, какой будет следующий «сетевой скачок » сети в момент получения ваших данных, он может полагаться на следующий маршрутизатор для принятия аналогичных решений и на все остальные маршрутизаторы на пути к сделать так же.

С помощью таблиц маршрутизации для выбора следующего перехода, если ваши данные могут обычно проходить через маршрутизатор во Франции для достижения пункта назначения в Норвегии, даже если через Францию ​​больше не было пути, какой-то другой маршрутизатор на пути, который подключался к Во Франции маршрутизатор узнает о сбое и перенаправит ваши данные другим путем, например, возможно, через Германию. Интернет является результатом ARPANET ; Одним из требований ARPANet было то, что он должен быть устойчивым и способным выдерживать сбой определенных элементов оборудования в сети путем маршрутизации вокруг отказавшего оборудования. Во времена ARPANET предшественники современных маршрутизаторов назывались интерфейсным процессором сообщений (IMP) .

Что касается вашей домашней сети, было бы возможно иметь прямое соединение с устройством в вашем доме, которое не является маршрутизатором. Если бы вы использовали Интернет еще во времена модемов удаленного доступа, вы бы не использовали маршрутизатор дома. Вместо этого ваш компьютер подключится к устройству, принадлежащему провайдеру. Некоторые предприятия и организации все еще используют ISDN, который работает аналогично старым модемам удаленного доступа, хотя у них может быть маршрутизатор ISDN, если у них есть несколько систем, которым необходимо совместно использовать соединение ISDN.

И даже в те дни, когда коммутируемое соединение использовалось почти всеми домашними пользователями и малыми предприятиями для доступа к Интернету, если домашний пользователь или малый бизнес имели ограниченное количество телефонных линий, но им требовался доступ в Интернет для нескольких компьютеров, Решение, которое было доступно, состояло в том, чтобы настроить один ПК с модемом удаленного доступа для работы в качестве маршрутизатора для всех других компьютеров в локальной сети дома или на работе. Я помню, как устанавливал маршрутизатор с модемом 56 Кбит / с, чтобы обеспечить удаленный доступ к Интернету для нескольких компьютеров в небольшом бизнесе.

Сегодня люди ожидают, что смогут иметь как проводные, так и беспроводные соединения в своем доме, которые могут подключаться к интернет-провайдеру одновременно, и, поскольку адреса интернет-протокола версии 4 (IPv4) ограничены, большинство домашних пользователей получают только один публичный IP-адрес, поэтому Требуется устройство, которое может выполнять преобразование сетевых адресов между этим одним общедоступным IP-адресом и несколькими частными IP-адресами, которые они будут использовать для своих собственных систем. И они хотят иметь возможность контролировать, кто имеет доступ извне к своим внутренним системам. Для этого вам понадобится ваш роутер или брандмауэр; большинство домашних маршрутизаторов имеют по крайней мере некоторые ограниченные возможности межсетевого экрана, встроенные в них.

Технически, ISP мог бы справиться с этой функцией для вас, но такой подход не будет хорошо масштабироваться для тысяч или даже миллионов клиентов. Например, если у вас есть собственный маршрутизатор, вы можете использовать частный IP-адрес 192.168.0.5 для одной из ваших систем, как и тысячи других интернет-провайдеров. Интернет-провайдер не обязан гарантировать, что при использовании частного пространства IP-адресов разные клиенты не выбирают одинаковые адреса. Оборудование интернет-провайдера, находящееся вне вашего дома, должно относиться только к одному IP-адресу, который вы предоставили провайдеру. И если вы хотите разрешить входящее подключение через порт 5000 к одной из ваших систем, вы можете управлять этим самостоятельно; Вам не нужно звонить в отдел технической поддержки интернет-провайдера, что может стать дополнительным бременем для обслуживающего персонала провайдера.

2
barlop

Я полагаю, вам это не нужно

Вы можете взять модем, подключить коммутатор и использовать публичный IP-адрес, предоставляемый провайдером.

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

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

Например, подумайте, если бы у всех в мире был уникальный номер, но номера не были сгруппированы вместе, вам нужно было бы найти полный номер человека в списке, чтобы выяснить, какая дыра / гнездо / порт / направление / угол для отправки данных. Принимая во внимание, что если бы вы сразу увидели, что они в Токио / их IP-адрес начинается с бла-бла-бла, и все в Токио / с IP-адресом, начинающимся с бла-бла-бла, отправили данные из этого отверстия / гнезда / порта / направления / угла тогда быстрее их достать.

Но вернемся к вашему личному делу, вашему дому.

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

Вам не нужно NAPT, если у вас есть только одно устройство. Простой старый переключатель в порядке.

Это не обязательно так безопасно (если вы сами не защищаете), и вы можете подключить только одно устройство, если интернет-провайдер не дает вам несколько IP-адресов. Но вы можете сделать это / это может быть сделано.

Точка терминологии. Устройство, которое вы называете маршрутизатором, является коробкой. Это делает функции. Маршрутизация, DHCP, NAPT у некоторых тоже есть модем. Вы можете отключить DHCP и NAT на коробке и сделать простую маршрутизацию. И коробка также имеет встроенный переключатель. Следовательно, вы можете перевести его в режим моста, отключив маршрутизатор.

- * функционально мост - это коммутатор. Иногда люди делают несколько различий в том, что коммутатор должен иметь несколько портов ... мост предназначен для сетей, работающих на разных носителях. может быть, некоторые говорят, что чипы в коммутаторе имеют более быстрый дизайн. Но функционально они переключают / соединяют (то же самое), используют таблицу MAC-адресов (или, возможно, какой-то другой протокол «уровня 2»), а MAC-адреса представляют собой схему плоских адресов, вероятно, что-нибудь на «уровне 2».

0
The Spooniest

Интернет - это не просто один протокол, а серия протоколов, которые накладываются друг на друга . Эти протоколы организованы в слои, и каждый из них выполняет определенную задачу, связанную с сетью.

В этом вопросе интерес представляют два уровня: канальный уровень и сетевой уровень (иногда называемый интернет-уровнем, но обратите внимание на нижний регистр i ; это не то же самое, что более широкий Интернет).

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

Сетевой уровень обрабатывает получение сигнала между двумя компьютерами, которые не связаны напрямую, используя цепочку машин, которые являются . Он идет в отдельном слое, так что ему не нужно знать или заботиться о том, как подключены различные машины; в цепочке могут быть машины, подключенные через Ethernet, Wi-Fi, Fibre Channel, PPP или даже более экзотические протоколы, и все они будут работать вместе одинаково.

Маршрутизаторы являются мостом между канальным уровнем и сетевым уровнем . Ваш маршрутизатор напрямую подключен к компьютерам в вашем доме (возможно, с использованием Ethernet, Wi-Fi или их комбинации), а также к компьютеру у вашего интернет-провайдера (есть много разных способов). Но ни одна из этих машин не связана напрямую друг с другом - они подключены только косвенно, через маршрутизатор, поэтому маршрутизатор образует важную связь между вашими домашними машинами и более широким Интернетом. Даже если ваш маршрутизатор не определит IP-адреса ваших домашних машин, вам все равно понадобится способ сформировать связь между ними, и именно это делает маршрутизатор .

Ну нет; переключатель уже связывает все машины вместе. Если вы обращаетесь к другому хосту в той же подсети, вы _не_ проходите через любой маршрутизатор (который внутренне просто подключен к одному из портов коммутатора). grawity 8 лет назад 0
@grawity: Это верно только в том случае, если все машины и коммутаторы находятся в одной подсети. Это часто справедливо для * большинства * машин в данной настройке, но почти всегда есть хотя бы одно исключение: восходящий канал к провайдеру. Эти исключения из правила делают маршрутизаторы необходимыми. The Spooniest 8 лет назад 0
0
Dan Henderson

For the simplest answer possible:

Any given device on a network can communicate with other devices in the same subnet through a switch. But in order to communicate with a device on a different subnet, a router is required. Switches will not transfer packets across subnets.

Однако, как упоминалось в других ответах, ваша домашняя сеть часто не находится в той же подсети, что и ваш шлюз ISP, и в этом случае ваши компьютеры будут общаться только друг с другом, а не с Интернетом без маршрутизатора. По этой причине кабельные модемы обычно включают (очень простой) маршрутизатор. Dan Henderson 8 лет назад 0
Возможно, маршрутизатор _ISP's_ находится в той же подсети, что и вы. Просто стало слишком сложно обслуживать несколько десятков клиентов. grawity 8 лет назад 0
@ Grawity Возможно, да. Но необычно, по той причине, что вы заявили. Dan Henderson 8 лет назад 0

Похожие вопросы