Чи може Wake on LAN працювати на VPN-з'єднанні?


15

Це правда, що ми не можемо дозволити будь-якій машині спати, до якої може знадобитися доступ через VPN-з'єднання?

(Я прошу це про помилку сервера, оскільки мова йде про стільки про VPN-сервери, скільки про сплячі ПК кінцевого користувача)

Відповіді:


10

Стара нитка, але я хотів передзвонити, тому що це все ще найкращий результат пошуку за "wol over vpn".

Так, магічний пакет WOL визначений у межах обмежень рівня 2, але це не означає, що він не може міститися всередині об’єкта мережі та транспортного протоколу, який потім може бути використаний для маршрутизації його через VPN. Причиною цього є "магічна" послідовність може бути де завгодно в межах корисного навантаження. Тож по суті стає питанням отримання звичайного маршрутизованого пакету до цільового хоста з "магічною" послідовністю всередині його корисного навантаження.

Більшість реалізацій магічного пакету використовують порт UDP 9, хоча це насправді не має значення, якщо він правильно прокладений і передається в тому ж домені широкомовної програми, що і цільовий комп'ютер. Поки клієнт VPN має правильні маршрути, він може правильно відправити широкомовний пакет, такий як 192.168.1.255 (широкомовна адреса), до шлюзу VPN через Інтернет.

Тож маршрутизація дійсно проста, проблема може полягати в тому, щоб правильно їх транслювати через цільовий шлюз VPN. Це означає, що налаштувати шлюз VPN / знайти опцію для переадресації трафіку від віддалених клієнтів VPN до локальної мережі.


4

Зазвичай немає, оскільки "MagicPacket" насправді знаходиться на рівні 2. Він навіть не маршрутизований без допомоги експедиторів (наприклад, IP-помічник).


Я сподівався, що сервери VPN матимуть якусь змогу для цього ...
Іан Рінгроуз

Зазвичай це не «норма» для клієнтів VPN. З самого сеансу VPN ви можете налаштувати посередницьку систему / обладнання, щоб допомогти запустити "MagicPacket" проти цільової системи / пристрою.
user48838

1

Існує фантастичний спосіб побудувати тунель другого рівня з SSH, і з цим WOL повинен добре працювати. Тому я не бачу причин обійтися, не відправляючи машини спати.

На основі згадки @slm я включив важливі частини джерела нижче.

Передумови:

1) на обох комп'ютерах має бути ввімкнено кореневий вхід. (Вибачте - ваші облікові дані на обох комп'ютерах повинні дозволяти створювати пристрій TAP). Це означає: на системному рівні root має пароль;

2) у файлі sshd_config хоста, на якому працює демона ssh, встановлені параметри PermitTunnel так і PermitRootLogin так;

3) ip переадресація включена в ядрі. Використовуйте команду sysctl, щоб встановити цей параметр: sysctl -w net.ipv4.ip_forwarding = 1; також додайте рядок net.ipv4.ip_forwarding = 1 у файл /etc/sysctl.conf, щоб налаштування залишилося після перезавантаження. Робіть це на обох комп’ютерах;

4) Ви встановили пакет bridge-utils або іншим чином команда brctl доступна для вас на обох комп'ютерах.

Створіть тунель:

ssh -w 1: 1 -o Tunnel = ім'я хоста Ethernet

опція -w встановлює назву пристрою TAP на будь-якому хості (тут tap1 буде створено з обох кінців).

Параметр -o призначений для визначення параметра конфігураційного файлу в командному рядку. Ми використовуємо Tunnel = ethernet для налаштування тунелю рівня 2.

Ця форма дозволить зберегти сеанс ssh на передньому плані. Якщо ви хочете, щоб він відмовився від оболонки після встановлення тунелю, ви можете скористатися параметром -f, щоб сказати, щоб він розщедрився на задній план. Однак для цього потрібна команда розщедритися, тому ви можете просто використовувати манекенську команду, таку як true, щоб змусити її працювати. Ви також можете використовувати цю функціональність, щоб встановити міст на віддаленому кінці, але я зараз не вступаю в це. Отже, це виглядатиме так:

ssh -f -w 1: 1 -o Tunnel = Ім'я хоста Ethernet

Додайте пристрої TAP до мосту:

brctl addbr br0; brctl addif tap1; ifconfig tap1 вгору; ifconfig br0 вгору

Ви запускаєте це на обох хостах (зауважте, що я не призначив IP-адресу). brctl - команда, яка використовується для управління мостовими пристроями. brctl addbr додає міст br0, і команда addif приєднується до пристрою tap1 до нього.

Далі слід додати фізичні інтерфейси Ethernet до мостового пристрою. Як ви хочете це зробити, буде різнитися, тому я розберуся над декількома сценаріями. Перший сценарій - це те, коли ваші однорангові VPN знаходяться в одній підмережі (тобто між ними немає маршрутизації), а другий сценарій - через Інтернет.

Безсоромно викрадено з: http://la11111.wordpress.com/2012/09/24/layer-2-vpns-using-ssh/


Ласкаво просимо до помилки сервера! Як правило, нам подобаються відповіді на сайті, щоб мати можливість самостійно стояти - Посилання чудові, але якщо це посилання коли-небудь перерветься, відповідь повинна мати достатньо інформації, щоб вона все-таки була корисною. Будь ласка, подумайте про редагування своєї відповіді, щоб включити більше деталей. Див. Поширені запитання для отримання додаткової інформації.
slm

де я можу знайти sshd_config у системі Windows 7?
Ян Рінроуз

@IanRingrose Я поняття не маю, тому що я працюю лише з Linux
сер l33tname

1

Так, ви можете замість того, щоб надсилати пакет WoL для трансляції адреси в цільовій мережі, просто надіслати його на IP-адресу машини, яку ви хочете прокинути. Програми, протестовані за допомогою PPTP VPN:


0

Я згоден з user48838 - за визначенням чарівний пакет надсилається лише через локальну підмережу. Однак я раніше використовував сценарій, написаний jpo, який працював з іншої підмережі через звичайний маршрутизатор. Спробуйте це - YMMV

http://gsd.di.uminho.pt/jpo/software/wakeonlan/


0

ну насправді відповідь ТАК.

Я успішно використовую WOL через PPTP VPN за допомогою цього додатка: https://play.google.com/store/apps/details?id=com.benfinnigan.wol&hl=pl


Ласкаво просимо до помилки сервера! Хоча це теоретично може відповісти на питання, бажано було б сюди включити істотні частини відповіді та надати посилання для довідки.
slm

0

Я перевірив це, і відповідь ТАК :)

В Інтернеті я знайшов інструмент, який надсилає пакет WOL як uni-cast на призначений хост, за допомогою якого уникнути передачі широкомовного пакету через випуск маршрутизатора.

Один момент, з яким потрібно стежити за цим рішенням, потрібно поставити статичний arp запис на маршрутизаторі, оскільки хост буде вимкнено і не відповість на запит ARP маршрутизатора. Ура!


Схоже, це буде спрацьовувати, також звучить так, що ці пакети будуть фактично передаватися. Запис ARP перекладається лише з IP на MAC. Він не повідомляє комутатору, на якому порту ввімкнений MAC. І якщо хост в автономному режимі, комутатор, ймовірно, не знає, де знаходиться цей MAC, тож він буде транслюватися. Але принаймні ніхто з господарів не збирається надсилати відповідь, тому це повинно бути добре.
kasperd

Деякі відомості про те, як знайти використаний інструмент, могли б покращити цю відповідь.
kasperd
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.