Пожалуйста, обратите внимание: это не на уже отвеченный вопрос «Мост IPv6 + IPv4 NATing», а вместо этого «Мост IPv6 +Клиент DHCPv4 на eth0 +DHCPv4 сервер по wlan0 "вопрос.
Для тестирования систем IPv4 / IPv6 Dual Stack и только IPv6 я хотел бы создать очень своеобразный «маршрутизатор» с использованием Linux. Этот броутер имеет два физических сетевых интерфейса, eth0 и wlan0. Я использую мост br0, к которому подключаю eth0 и wlan0.
Теперь об общем контексте:
eth0
будет прикреплен к: wlan0
работает в режиме точки доступа, к которой позже будут подключаться беспроводные устройства, например смартфоны. Эти устройства должны иметь полное соединение IPv6, но только "ограниченное" (локальное) соединение IPv4. То есть эти устройства должны получить частный IPv4-адрес, но нет никакого моста или маршрутизации к eth0
стороны, когда дело доходит до IPv4.С учетом семейств IP-адресов: - IPv6: это просто использовать ebtables
, потому что мне просто нужно включить мост для фреймов Ethernet с типом IPv6 между всеми портами моста. Сам мост получает адрес SLAAC, используя RA, полученные через eth0
, как и все мобильные устройства. - IPv4: вот где я сейчас немного потерялся, потому что я хочу добиться этого немного сложного поведения: - br0
должен получить автоматически настроенный IPv4-адрес через DHCPv4 из eth0
стороне, если доступен сервер DHCPv4, в противном случае вернитесь к статическому IPv4. Итак, есть DHCPv4 клиент это автоконфигурирует br0
в данный момент. - eth0
должен предлагать DHCPv4 сервер только на подключенные мобильные устройства. В частности, мост-локальный DHCPv4 клиент не должен получать свою конфигурацию IPv4 от локального DHCPv4 сервер.
Причина, по которой мне нужен DHCPv4-клиент на eth0, заключается в том, что мне нужно установить ssh в ящик для обслуживания, и это лучше всего делать в «домашней» сетевой среде, но мне нужно переключаться между несколькими домашними сетями с разными диапазонами адресов, поэтому я не могу используйте статическую конфигурацию.
Как я могу запустить клиент и сервер DHCPv4 на одном хосте, но при этом они будут обслуживать отдельные IP-подсети / «сегменты»? Возможно ли это с помощью ebtables? Нужно ли мне вместо этого подключать клиент и сервер к физическим сетевым интерфейсам для достижения моей цели? Если да, то как это сделать правильно, если это вообще разумно?
Иногда проще добавить оборудование, чем очень стараться заставить программное обеспечение работать в неожиданных конфигурациях. Это своего рода виртуализация теверса. (физикализация?)
В моем случае это означает, что намного проще отказаться от запуска DHCPv4. клиент на eth0
. Вместо этого я просто разрешаю ему требовать необязательный eth1
или wlan1
на обслуживание / обновления. Далее с DHCPv4 клиент в сторону, ISC DHCPv4 сервер с радостью соглашается быть связанным wlan0
(!) - но не привязывайте к br0
.
Так, br0
используется с трафиком IPv6, предназначенным самому этому устройству, и без IPv4-адреса. eth0
порт физического моста, также без IPv4-адреса. И wlan0
получает статический IPv4-адрес и на нем сидит DHCPv4-сервер. Для обновлений подключите другой eth1
или wlan1
и делай свою работу.