LINUX.ORG.RU
ФорумAdmin

broadcast через шлюз

 


0

1

Здравствуйте, коллеги!

Есть основная сеть: 192.168.0.0/24, в ней есть некий комп с адресом 192.168.0.250 (Linux), выполняющий роль шлюза для сети 192.168.12.0/24. В этой подсети он имеет второй ip 192.168.12.1.

Роутинги настроены. Из 192.168.0.0/24 прекрасно пингуются адреса 192.168.12.0/24 и обратно.

А еще я сделал небольшую програмку, которая рассылает broadcat на определенный порт и выводит список откликнувшихся. Разумеется, откликаются те машины, на которых висит програмка, слушающая этот порт и посылающая UDP ответ вопрошающему.

Все прекрасно работает если броадкастер и ответчик находятся в одной сети, например 192.168.0.0/24, но броадкасты не доходят из главной сети в подсеть 192.168.12.0/24.

Можно как-то настроить, что бы 192.168.0.250 пропускал броадкасты из 192.168.0.0/24 в 192.168.12.0/24?


У тебя 2 проблемы:

1. Ни один вменяемый роутер не будет форвардить BC пакеты. Т.е. 192.168.0.250 получивший BC не будет его пихать в 192.168.12.0/24. Если тебе нужно это, то пиши свой ретранслятор.

2. отвечать на BC можно только в том случае, если это непосредственно подключенная сеть (т.е. доступно через прямой маршрут). Получившие в 192.168.12.0/24 пакет от 192.168.0.X на 192.168.12.255 проигнорируют его.

Задайся вопросом - нафига нужен dhcprelay?

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

vel ★★★★★
()
Последнее исправление: vel (всего исправлений: 1)
Ответ на: комментарий от vel
  1. Ни один вменяемый роутер не будет форвардить BC пакеты. Т.е. 192.168.0.250 получивший BC не будет его пихать в 192.168.12.0/24. Если тебе нужно это, то пиши свой ретранслятор.

Так я не расчитываю на вменяемый роутер! У меня роутером служит машина на Linux с двумя сетевухами. Мне всего-то и нужно его заставить форвардить броадкасты.

Разумеется, не сложно написать свой «proxy» для этой задачи, но наверняка можно решить эту проблемму системными средствами.

  1. отвечать на BC можно только в том случае, если это непосредственно подключенная сеть (т.е. доступно через прямой маршрут). Получившие в 192.168.12.0/24 пакет от 192.168.0.X на 192.168.12.255 проигнорируют его.

Почему 192.168.12.255? 255.255.255.255.

Есть вариант отказаться от броадкастов. Сейчас буду его продумывать.

Вообще, идея следующая: в сети 192.168.12.0.24 живет некий зоопарк машин на Linux без клавиатур, мониторов мышей и прочего. С ними сообщение только по сети.

Но бывают ситуации, что нужно что-то серьезное поправить, а тащить к злосчастной машине клавиатуру и монитор - проблематично. Тогда просто в нужную машину втыкается флешка с Live системой и reset. В настройках загрузки первым номером идет загрузка с флешки. Система грузится с флешки, сетевые настройки получает по DHCP и получается дотуп из рабочей сети 192.168.0.0/24. Тут, как бы, напрашивается поиск в dhcpd.leases на машине-роутере, абы она и является DHCP сервером для сети 192.168.12.0/24, но…

Не редко бывают ситуации, когда подобным образом происходит «лечение» какой-то машины в главной сети, а вот тут сложность. Доступа к DHCP серверу для сети 192.168.0.0/24 у меня нет.

Потому, на мой взгляд, проще использовать броадкасты с форвардингом в подчиненные сети.

HighMan
() автор топика
Ответ на: комментарий от HighMan

отвечать на BC можно только в том случае, если это непосредственно подключенная сеть (т.е. доступно через прямой маршрут). Получившие в 192.168.12.0/24 пакет от 192.168.0.X на 192.168.12.255 проигнорируют его.

Почему 192.168.12.255? 255.255.255.255.

bootpfwd/dhcprelay были написаны именно для решения этой проблемы.

Система грузится с флешки, сетевые настройки получает по DHCP и получается дотуп из рабочей сети 192.168.0.0/24. Тут, как бы, напрашивается поиск в dhcpd.leases на машине-роутере, абы она и является DHCP сервером для сети 192.168.12.0/24, но…

Если это постоянные машины, то почему бы не сделать для них резервирование в dhcp чтобы не искать их?

Если у тебя есть подключение к обоим сетям (192.168.0.0/24 и 192.168.12.0/24), то что мешает там запускать nmap для каждой подсети в режиме обнаружения хостов ? Типа «nmap -T5 -sn -PE -n 192.168.X.0/24»

vel ★★★★★
()