2

У меня есть сервер Debian, который я хотел бы разбудить удаленно, используя такой инструмент, как wakeonlan .

Я назначил серверу статический внутренний IP-адрес 192.168.0.14 и настроил соответствующую переадресацию портов в маршрутизаторе (который в противном случае имеет очень ограниченный интерфейс администратора).

Когда я вошел в ту же сеть, я могу разбудить сервер, используя IP-адрес подсети, но не могу разбудить сервер, используя публичный IP-адрес маршрутизатора.

Чего я не понимаю: когда сервер работает и я слушаю на сервере с помощью netcat nc -ulv -p 9 , я вижу, что пакет приходит в обоих случаях (как при отправке на IP-адрес подсети, так и при общедоступной передаче). IP роутера).

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

2 ответа2

4

Когда ваш сервер выключен, ваш маршрутизатор вскоре теряет свою запись в таблице ARP. Маршрутизатор знает IP-адрес, на который должен перейти магический пакет, но не может связать MAC-адрес. Вам нужно определить статическую запись ARP, чтобы она работала (хотя при очень ограниченном интерфейсе администратора это может быть невозможно).

Вы определили статический внутренний IP для сервера (который "соединяет" IP и MAC), но это для DHCP-сервера, а не таблицы ARP.

Обычно волшебный пакет - это широковещательный кадр. Когда вы используете его в локальной сети, маршрутизатору не нужна запись ARP для этого конкретного сервера, который вы хотите активировать, он просто передает пакет. Широковещательные пакеты обычно не маршрутизируются (как говорится в ответе Стивена ), поэтому вы отправляете одноадресный пакет и определяете переадресацию портов. Этот пакет, однако, нуждается в действительной записи ARP на вашем маршрутизаторе.

2

Основное ограничение стандартного широковещательного пробуждения по локальной сети состоит в том, что широковещательные пакеты обычно не маршрутизируются. Это предотвращает использование метода в больших сетях или через Интернет. Для преодоления этого ограничения могут использоваться трансляции, направленные на подсеть (SDB).

Источник: Wake-on-LAN - Википедия

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .