Проброс порта на широковещательный адрес
От: j2me  
Дата: 01.12.11 07:27
Оценка:
Имеется ADSL модем DLink DSL-2600U. Делаю проброс 9-го порта UDP на адрес 192.168.1.2 (IP компьютера, получает автоматически от DHCP модема). Отправляю пакет с www.wakeonlan.ru на внешний IP модема, с указанием MAC сетевушки компьютера. Смотрю на компьютере через WakeOnLANMonitor — пакет приходит. Внутренний IP модема 192.168.1.1, маска подсети 255.255.255.0, диапазон DHCP 192.168.1.2-192.168.1.254. Меняю адрес проброса на 192.168.1.255 — пакет не приходит. Я правильно думаю, что 192.168.1.255 это широковещательный адрес и пакет тоже должен быть доставлен компьютеру?
Re: Проброс порта на широковещательный адрес
От: watch-maker  
Дата: 01.12.11 21:12
Оценка:
Здравствуйте, j2me, Вы писали:

J>Имеется ADSL модем DLink DSL-2600U. Делаю проброс 9-го порта UDP на адрес 192.168.1.2 (IP компьютера, получает автоматически от DHCP модема). Отправляю пакет с www.wakeonlan.ru на внешний IP модема, с указанием MAC сетевушки компьютера. Смотрю на компьютере через WakeOnLANMonitor — пакет приходит. Внутренний IP модема 192.168.1.1, маска подсети 255.255.255.0, диапазон DHCP 192.168.1.2-192.168.1.254. Меняю адрес проброса на 192.168.1.255 — пакет не приходит.


J>Я правильно думаю, что 192.168.1.255 это широковещательный адрес

Конкретно для твоей сети — да.

J>и пакет тоже должен быть доставлен компьютеру?

Нет. Решение о маршрутизации применяется после DNAT.
Если ты делаешь DNAT на unicast-адрес, то он конечно будет маршутизоваться. Но как только ты делаешь DNAT на broadcast-адрес, маршрутизатор получает право отбросить пакет, так как маршрутизатор по определению является устройством, которое разделяет broadcast-домены (Разумеется, имея исходные коды прошивки, можно подправить правила маршрутизации, но это приведёт к проблемам с безопасностью, так что делать можно только на свой страх и риск).

Универсальное решение — запустить на маршрутизаторе realy-программу, которая будет рассылать пакеты уже от своего имени (так, к примеру, работает dhcrelay и WINS).
Ad-hoc решение — зарезервировать в сети unicast-адрес и делать DNAT на него. После чего явно прописать для этого адреса static ARP.
Re[2]: Проброс порта на широковещательный адрес
От: j2me  
Дата: 02.12.11 05:30
Оценка:
Здравствуйте, watch-maker, Вы писали:

WM>Ad-hoc решение — зарезервировать в сети unicast-адрес и делать DNAT на него. После чего явно прописать для этого адреса static ARP.


это означает что нужно прописать в DHCP <mac address> : <ip address> ?
т.е. сетевушке компьютра (по ее MAC адресу) будет назначаться всегда один и тот же IP адрес?
Re[3]: Проброс порта на широковещательный адрес
От: watch-maker  
Дата: 02.12.11 06:11
Оценка:
Здравствуйте, j2me, Вы писали:

J>Здравствуйте, watch-maker, Вы писали:


WM>>Ad-hoc решение — зарезервировать в сети unicast-адрес и делать DNAT на него. После чего явно прописать для этого адреса static ARP.


J>это означает что нужно прописать в DHCP <mac address> : <ip address> ?

Нет. ARP — это Address Resolution Protocol. К DHCP он относится весьма опосредствованно.
Re[4]: Проброс порта на широковещательный адрес
От: j2me  
Дата: 02.12.11 07:36
Оценка:
а как практически это должно выглядеть?
Re[5]: Проброс порта на широковещательный адрес
От: watch-maker  
Дата: 02.12.11 08:51
Оценка: 2 (1)
Здравствуйте, j2me, Вы писали:

J>а как практически это должно выглядеть?

Отселить DHCP чтобы не мешал. Например, пусть раздаёт сеть 192.168.1.0/25. Выбрать из освободившихся адресов один, пусть будет 192.168.1.200. Добавить static arp запись для 192.168.1.200 на нужный MAC-адрес. Нужным будет либо MAC-адрес компьютера, либо broadcast ethernet address (который FF:FF:FF:FF:FF:FF), — для WoL наверно будет не важно.
После чего включить в настройках DNAT на 192.168.1.200.
Механизм работы прост — для приходящего пакета делается DNAT и он получает маршрутизируемый unicast-адрес. А собственно после маршрутизации и прохождения таблиц фаервола при отправке в LAN нужный etherent адрес будет взят из таблиц ARP, но к счастью он там уже будет, что позволит послать пакет даже неотвечающему компьютеру (или всем компьютерам, если выбран задан broadcast ethernet address).

Единственная сложность, как мне кажется, может возникнуть только с заданием Static ARP — эту функцию могли просто не включить в web-интерфейс по причине её редкой необходимости. Если это так, то придётся добавлять запись вручную, например зайдя на устройство через терминал.
Re[6]: Проброс порта на широковещательный адрес
От: Аноним  
Дата: 04.12.11 14:22
Оценка:
Здравствуйте, watch-maker, Вы писали:

WM>Здравствуйте, j2me, Вы писали:


J>>а как практически это должно выглядеть?

WM>Отселить DHCP чтобы не мешал. Например, пусть раздаёт сеть 192.168.1.0/25. Выбрать из освободившихся адресов один, пусть будет 192.168.1.200. Добавить static arp запись для 192.168.1.200 на нужный MAC-адрес. Нужным будет либо MAC-адрес компьютера, либо broadcast ethernet address (который FF:FF:FF:FF:FF:FF), — для WoL наверно будет не важно.
WM>После чего включить в настройках DNAT на 192.168.1.200.
WM>Механизм работы прост — для приходящего пакета делается DNAT и он получает маршрутизируемый unicast-адрес. А собственно после маршрутизации и прохождения таблиц фаервола при отправке в LAN нужный etherent адрес будет взят из таблиц ARP, но к счастью он там уже будет, что позволит послать пакет даже неотвечающему компьютеру (или всем компьютерам, если выбран задан broadcast ethernet address).

WM>Единственная сложность, как мне кажется, может возникнуть только с заданием Static ARP — эту функцию могли просто не включить в web-интерфейс по причине её редкой необходимости. Если это так, то придётся добавлять запись вручную, например зайдя на устройство через терминал.


спасибо, так работает. добавил static arp через telnet, но при выключении модема запись arp пропадает.
Re[7]: Проброс порта на широковещательный адрес
От: watch-maker  
Дата: 07.12.11 09:27
Оценка: 2 (1)
Здравствуйте, Аноним, Вы писали:

А> так работает. добавил static arp через telnet, но при выключении модема запись arp пропадает.

Да, это тоже проблема.
Тут можно либо сделать так чтобы какое-либо внешнее устройство периодически проверяла конфигурацию и обновляло её. Это сделать просто через какой-нибудь скрипт, просто передавая через telnet нужные данные. Не очень красивое решение, так как требует ещё одного устройства. Но с другой стороны, этим устройством вполне может быть сам компьютер, который посылает WoL пакет, — просто в этом случае последовательность действий будет чуть посложнее и будет состоять из двух шагов: сконфигурировать маршрутизатор и собственно послать сигнал к включению.
Другим решением может быть правка прошивки. Исходные коды вроде как доступны, а следовательно можно пробросить нужные настройки в интерфейс (или тупо записать их в какой-нибудь стартовый скрипт, если универсальность не нужна вообще).
Re[8]: Проброс порта на широковещательный адрес
От: j2me  
Дата: 07.12.11 12:45
Оценка:
Здравствуйте, watch-maker, Вы писали:

WM>Здравствуйте, Аноним, Вы писали:


А>> так работает. добавил static arp через telnet, но при выключении модема запись arp пропадает.

WM>Да, это тоже проблема.
WM>Но с другой стороны, этим устройством вполне может быть сам компьютер, который посылает WoL пакет, — просто в этом случае последовательность действий будет чуть посложнее и будет состоять из двух шагов: сконфигурировать маршрутизатор и собственно послать сигнал к включению.
спасибо еще раз, на этом варианте пожалуй и остановлюсь.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.