Рейтинг:0

Можно ли заблокировать трафик dhcp с помощью iptables?

флаг it

У меня есть два устройства со встроенным Linux. Один из них (машина A) имеет два сетевых интерфейса: eth, который используется для соединения машин друг с другом, и интерфейс wlan для подключения к маршрутизатору через WiFi. Вторая машина (B) имеет только один интерфейс eth. Моя цель — разрешить доступ к сетям Wi-Fi на машине B. Я использовал некоторые правила iptables для фильтрации пакетов с машины A на машину B, и это работает. Теперь мне нужно заблокировать трафик dhcp на первой машине, чтобы он не достигал второй машины. Я искал некоторые правила iptables, чтобы сделать это, но обнаружил, что с iptables это невозможно. Есть ли другой способ заблокировать этот трафик?

Спасибо заранее за любую помощь.

anx avatar
флаг fr
anx
Подождите, что вы хотите: подключить интерфейсы или запретить пересылку трафика с одного на другой?
user6758 avatar
флаг it
@anx Я хотел бы заблокировать только трафик dhcp с машины A на машину B или, точнее, между интерфейсами wlan и eth на машине A.
vidarlo avatar
флаг ar
Это пахнет [XY-проблемой](https://xyproblem.info/). Когда одним из шагов, который вам требуется, является блокировка DHCP, вы, вероятно, где-то ошибаетесь.
A.B avatar
флаг cl
A.B
Чтобы устранить двусмысленность, можете ли вы сказать, настроена ли машина А как точка доступа или как простой беспроводной клиент? И добавить в ответ для каждого устройства вывод этих команд (некоторые будут возвращать некоторые результаты из предыдущего, но это все еще необходимо)? `ip -br ссылка; ip -br адрес; ip route`, затем также `ip -br link show type bridge` и, наконец, `ip -br link show type bridge_slave`.
vidarlo avatar
флаг ar
@A.B он пишет, что A подключается к маршрутизатору, что, вероятно, означает, что это точка доступа ...
флаг cn
«Когда одним из шагов, который вам требуется, является блокировка DHCP, вы, вероятно, где-то ошибаетесь». - не обязательно. Мошеннические DHCP-серверы — известная проблема. Вот почему, например, в Hyper-V есть механизм, блокирующий виртуальные машины от работы в качестве DHCP (если только они не отключены в конфигурации). У IBM когда-то была проблема, что люди просто настраивали DHCP-серверы для тестирования, а затем части сети получали эти IP-адреса. Следовательно, фильтрация имеет БОЛЬШОЙ смысл, если только вы не можете зафиксировать, что никто не подключает мошеннический DHCP-сервер где-либо.
vidarlo avatar
флаг ar
@TomTom Я *полностью* согласен с вашим комментарием. Я более конкретно думал о проблеме, представленной здесь, с двухточечной связью между двумя устройствами ... Блокировка неизвестных хостов, действующих как DHCP, является разумной частью конфигурации сети для сети с несколькими устройствами.
Рейтинг:2
флаг ar

введите описание изображения здесь

Я считаю, что это более или менее установка, которую вы себе представляете. А подключается к WiFi и получает IP-адрес. B подключен к A через Ethernet и имеет свои собственные (частные RFC1918) IP-адреса.

Вы хотите, чтобы B достигал устройств в WiFi.

Теперь A использует DHCP для получения IP-адреса на интерфейсе WiFi. Но он не перенаправляет DHCP на разные интерфейсы, если вы не используете прокси-сервер DHCP. Кроме того, клиенты WLAN, как правило, не могут представлять более одного MAC-адреса, поэтому каким-то образом вам придется назначить дополнительный IP-адрес для A или сделать так, чтобы A представлял трафик B в WiFi.

легкий способ сделать это - сделать трафик NAT, который исходит из Ethernet, и перенаправить его на Wi-Fi. Это то, что делает ваш домашний маршрутизатор, и он позволит B общаться с устройствами (и Интернетом) по WiFi. Устройства в этой сети будут считать, что трафик исходит от A, поскольку они вообще не видят B.

О том, как использовать NAT, см., например, этот вопрос.

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

Ответить или комментировать

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