Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Wake on Lan na routerze FritzBox 7330

13 Sie 2018 18:27 132 3
  • Poziom 13  
    Witam. Moja sieć skonstruowana jest w sposób następujący: FritzBox 7330 jest routerem i modemem ADSL.Do niego podłączone jest bezpośrednio kilka komputerów, oraz inny router chodzący w trybie wyłączonego DHCP (czyli po prostu jako access point). Do access pointa podłączony jest mój komputer (oraz oczywiście kilka innych komputerów - ale to w tym przypadku nieistotne). Wysyłając Magic Packet w sieci LAN na adres 10.0.0.255 budzę mój komputer bez problemu. Problem pojawia się gdy próbuję komputer obudzić z zewnątrz. W ustawieniach przekierowania nie mogę ustawić przekierowania portu 9 na ip 10.0.0.255, gdyż router mówi że nie jest to fizyczny adres komputera. Gdy ustawię przekierowanie na mój komputer, magic packet z zewnątrz nie budzi mojego komputera (gdyż router próbuje wysłać pakiet za pośrednictwem IPv4 - przynajmniej tak przypuszczam). Wyłączałem w routerze DHCP, przydzielałem komputerowi stałe IP, nic to nie dało. Posunąłem się więc do użycia pewnej sztuczki opisanej na wiki DD-WRT. Połączyłem się z telnetem routera i wydałem polecenie
    Code:
    arp -i lan -s 10.0.0.19 FF:FF:FF:FF:FF:FF

    Następnie próbowałem przekierować zewnętrzne połączenia na porcie 9 UDP na adres 10.0.0.19. Niestety, mój router nie umożliwia skonfigurowania przekierowania dla adresu IP do którego nie jest przypisane żadno urządzenie, dlatego adresem jest właśnie 10.0.0.19 - adres pozostały po starym komputerze którego w sieci już dawno nie ma. Niestety, po wykonaniu tej komendy i wyłączeniu komputera, komputera nadal nie dało się obudzić magic packetem z zewnątrz. Wszedłem więc za pomocą telnetu do mojego routera i znalazłem plik ar7.cfg, który odpowiedzialny jest m.in za port forwarding - niestety w przeciwieństwie do tutoriali w internecie w pliku nie ma działu "forwardrules", a zasady przekierowania portów przypisane są do poszczególnych komputerów. Wygląda to mniej więcej tak:
    Wake on Lan na routerze FritzBox 7330

    Warto zauważyć, że już trochę kombinowałem i zmieniłem adres w Ipforwardrules na 10.0.0.255 - niestety, nic to nie dało. Przed sobą mam jeszcze zmianę adresu MAC tego komputera w ar7.cfg na FF:FF:FF:FF:FF:FF, oraz ewentualnie próbę zmiany forwardrule z 0.0.0.0:9 na FF:FF:FF:FF:FF:FF:9, ale wydaje mi się mocno że nie zadziała to tak jak powinno. Ewentualnie mogę zmienić adres IP komputera(tego dawnego) na 10.0.0.255.
    Router ma wbudowaną funkcję WakeOnLan - niestety polega ona na tym, że jeśli przykładowo ustawię sobie przekierowanie na porcie 9 na mój komputer, to każdy pakiet - niezależnie czy magic packet czy inny, spowoduje wysłanie przez router magic packeta do mojego komputera. Chcę aby tylko magic packet zawierający mój MAC był w stanie to zrobić.
    Wiem, że są dużo prostsze metody - jak np. zmiana firmware w routerze na Open-WRT albo użycie Raspberry Pi, który już i tak posiadam.
    Czy ktoś mógłby podpowiedzieć jakiś sposób, aby router mimo wszystko rozesłał ten pakiet jako broadcast?

    Z góry dziękuję za pomoc.
  • Specjalista Sieci, Internet
    Przekieruj dowolny port TCP/UDP pod IP komputera które ma być statycznie zarezerwowane i mieć statyczny wpis w tablicy ARP. Później wysyłasz pod zewnętrzny adres i ten port pakiet WoL. Mi tak działa.
  • Poziom 13  
    Udało mi się wymusić na routerze utworzenie przekierowania portu na ip 10.0.0.254, następnie za pomocą polecenia arp utworzyć przekierowanie na adres FF:FF:FF:FF:FF:FF i wszystko śmiga. Niestety, tablica arp resetuje się z każdym restartem routera. Próbowałem problem rozwiązać wywołując w shellu:
    Code:
    echo '#!/bin/sh'>/var/rc.user
    
    echo '/sbin/arp -l lan -s 10.0.0.254 FF:FF:FF:FF:FF:FF '>>/var/rc.user
    cat /var/rc.user > /var/flash/debug.cfg


    Niestety, po restarcie routera obydwa pliki (rc.user oraz debug.cfg) już nie istniały, a w tablicy arp nie było żądanego wpisu.Jak dopisać, żeby wpis dodawał się przy starcie routera?