Получение локального широковещательного пакета, отправленного из «суперсети» - PullRequest
1 голос
/ 14 апреля 2011

У меня вопрос к Linux, на C.

Скажите, что хост A в подсети / 16 отправляет широковещательный пакет UDP.(т. е. путем широковещательной передачи на xxx.xxx.255.255)

Существует ли способ для хоста B в подсети с маской подсети / 24 принять эту широковещательную передачу?

Моя тестовая программа на хосте B ожидает на правильном порту, но ничего не получает, если A отправляет на xxx.xxx.255.255.Но это происходит, когда используется xxx.xxx.xxx.255.

Более того, у меня есть ограничения, которые: 1. Я не могу изменить конфигурацию сети, 2. Устаревшая программа, работающая на хосте A, не может изменить это.

Спасибо!

Ответы [ 2 ]

1 голос
/ 14 апреля 2011

Нет, и похоже, что ваша сеть настроена неправильно.

У вас не может быть перекрывающихся сетей.Либо у вас есть сеть / 16, и каждый хост в этом / 16 использует 255.255.0.0 в качестве маски сети;или вы разбили его на более мелкие сети, и в этом случае каждая меньшая сеть будет иметь свою собственную маску сети и широковещательный адрес.

0 голосов
/ 14 апреля 2011

попробуйте передать в подсеть, на которой включен компьютер.xx? .255

например,

ip is 24.234.123.?
broadcast to 24.234.123.255

, поскольку компьютер заблокирован в подсети / 24, он будет заблокирован только для ip в его диапазоне.

и его трансляцияв пределах его диапазона.

...