Как перефразированное выше может быть правдой? Я настроил достаточное количество сетевого оборудования бытового уровня, и в реальности это не так. В вашем роутере у вас есть опции фильтрации и маршрутизации как по IP, так и по Mac.
Это не удивительно, и это не проблема.
Во- первых, хотя IP маршрутизаторы описаны как устройства "слой 3", это не означает , что они не могут взаимодействовать с более низкими слоями - они обычно видят весь пакет, и с его Ethernet и заголовков IP и правила брандмауэра может прекрасно соответствовать на одном или обоих.
Во-вторых, я повторю, что ваше сетевое оборудование домашнего уровня имеет множество функций: основной ЦП работает под управлением ОС и управляет маршрутизацией; аппаратный коммутатор управляет пересылкой пакетов уровня 2 между портами «LAN»; а точка доступа Wi-Fi обрабатывает, ну и Wi-Fi. Для одной и той же ОС вполне возможно настроить как ядро маршрутизации, так и подключенное оборудование для коммутации и Wi-Fi.
(На самом деле, я бы поспорил, что опция фильтрации MAC-адресов специально предназначена для точки доступа Wi-Fi - они могут разрешать или запрещать сопоставления WLAN уровня 1 на основе MAC станции. Хотя я не уверен, что это обычно применяется Wi-Fi -Fi сам чип AP, или через hostapd, работающий на основной ОС ...)
Тогда есть то, что люди называют «коммутаторами уровня 3», которые могут действовать как коммутаторы или маршрутизаторы в зависимости от потребностей - каждый отдельный порт можно перенастраивать, поэтому вы можете переключать некоторые порты (таким образом, принадлежащие к одной подсети), остальные маршрутизировать и ОС переконфигурирует микросхему коммутатора по мере необходимости.
Также при использовании программного обеспечения виртуальной машины ваша физическая сетевая карта переходит в случайный режим, где она получает пакеты, отправленные на несколько IP-адресов, и передает правильные пакеты виртуальной машине и реальной машине.
Да, это тоже не проблема. Нет ничего, что могло бы помешать ПК стать IP-маршрутизатором, мостом или их комбинацией. Большая часть программного обеспечения для виртуальных машин может работать в обоих режимах - либо подключить виртуальные машины к локальной сети на уровне 2, либо создать для них отдельную подсеть, чтобы ПК выступал в качестве маршрутизатора между ними.
(В этом отношении ПК могут стать действительно гибкими - буквально вчера я списал "броузер", который был установлен как мост, за исключением случаев, когда речь шла о пакетах IPv4, которые вместо этого были маршрутизированы ...)
Конечно, IP-версия 4 будет функционировать, даже если адрес Mac будет каким-то образом скрытым.
На самом деле, это не IP , который нуждается в L2 адресации - это слой 2 сам по себе , что делает.
Да, конечно, было бы возможно спроектировать сеть, которая заботится только об IP-адресах и использует их также для коммутации. На самом деле, я думаю, что именно так работали сети АТМ - "коммутатор" АТМ по сути выступал бы в роли самонастраивающегося маршрутизатора, но также автоматически определял, какие отдельные адреса АТМ находятся за каждым портом (как это сделал бы коммутатор).
Но на практике IP был спроектирован так, чтобы не иметь жестких зависимостей от какого-либо конкретного типа канального уровня, и в результате вы можете переносить его по чему угодно - Ethernet, FDDI, ARCnet, FireWire, почтовые голуби ... Аналогично, потому что большинство канальных уровней имели свои собственные адресация позволяла избежать любых зависимостей от IPv4, не нужно было ничего делать, чтобы одинаковые коммутаторы поддерживали IPv6 (или в этом отношении IPX, или DECnet, или AppleTalk, или NetBEUI,…) по одному и тому же Ethernet.
Таким образом, причина того, что у вас есть оба типа адресов, заключается в том, что они сознательно хранятся отдельно, и это обеспечивает большую гибкость.
(Как IPv4, так и IPv6 могут также функционировать по двухточечным каналам без необходимости какой-либо адресации L2, так как в любом случае такие каналы имеют только два направления; два простых примера - это VPN и подключения удаленного доступа.)
На самом деле, хотя это не имеет ничего общего с масками подсетей, вы можете взглянуть на IPX и DECnet - оба распространенных протокола локальной сети в первые дни до того, как IP и Интернет вступили во владение. Адреса IPX состояли из двух частей: сети и хоста, например, 618A1.0060086DD3EE
, и часть хоста всегда совпадала с соответствующим MAC-адресом Ethernet. Между тем, DECnet сделал обратное - потребовалось изменить Ethernet MAC на специальный адрес, в котором был закодирован адрес узла DECnet. Таким образом, с одной стороны, вам не нужен ARP, но с другой стороны, вы были в значительной степени обязаны использовать Ethernet или что-то совместимое с ним.