Пробуждение по локальной сети через Интернет

Пробуждение по локальной сети через Интернет

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

У меня Ubuntu на системах. Я могу включить системы локально, но я также хочу знать:

  • Как это сделать через Интернет?
  • Как вообще пинговать систему в этой сети?
  • Как сделать переадресацию портов в этой ситуации? Или есть ли какой-то способ, при котором не придется переадресовывать порты в маршрутизаторах?

Я пыталсяэтотно это не работает!

решение1

Волшебный пакет, отправленный с помощью Wake-On-LAN,не передается через интернет. Вам необходимо отправить этот пакет с одного из компьютеров в локальной сети, например, через удаленный вход.

Маршрутизатор или шлюз в локальной сети вашего университета, похоже, делаетНАТ. Если у вас нет административного доступа к шлюзу (например, для настройки переадресации портов) или вы не можете войти в одну из машин в локальной сети, получить доступ к машине за NAT невозможно.

Вы можете обойти NAT, если сеть использует IPv6, поскольку NAT в IPv6 обычно не используется (и не должен). Но это все равно не поможет вам отправить волшебный пакет.

решение2

Вам понадобится подключиться к шлюзу по SSH, откуда, если ваши сетевые карты поддерживают эту функцию, вы сможете включать свои машины.

Во-первых, убедитесь, что ваши сетевые карты поддерживают wakeonlan. С целевой машины запустите

 sudo aptitude install ethtool
 sudo ethtool eth0

Если вывод ethtoolсодержит строку типа Supports Wake-on: g, все должно быть в порядке. Теперь настройте машину, чтобы разрешить это:

sudo nano /usr/bin/wakewol

Добавьте эти строки в только что созданный файл:

#!/bin/bash
ethtool -s eth0 wol g

Сохраните файл и запустите sudo chmod 755 wakewol, чтобы сделать его исполняемым. Теперь запустите

sudo nano /etc/network/interfaces

и добавьте эту строку в конец файла:

post-down /usr/bin/wakewol

Теперь ваша машина должна поддерживать wakeonlan. Однако, нет способа сделать это без предварительного входа на сервер шлюза. Что-то вроде этого:

rana@local $ ssh rana@gateway
rana@gateway $ wakeonlan 01:02:03:04:05:06

Просто измените 01:02:03:04:05:06на фактический MAC-адрес машины, которую вы хотите включить. Это предполагает, что wakeonlanон уже установлен на сервере шлюза.

Это можно еще больше упростить, передав wakeonlanкоманду для sshвыполнения на шлюзе:

ssh rana@gateway wakeonlan 01:02:03:04:05:06

Использованная литература:

http://community.linuxmint.com/tutorial/view/1062

Связанный контент