Por que preciso usar um endereço IP ao acordar-on-LAN em um computador?

7

Eu tenho uma nova instalação de servidor GNU / Linux Debian 9.

Isso é o que recebo de ethtool :

root@web-server:~# ethtool enp2s0
Settings for enp2s0:
        Supported ports: [ TP MII ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Advertised pause frame use: Symmetric Receive-only
        Advertised auto-negotiation: Yes
        Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                             100baseT/Half 100baseT/Full
                                             1000baseT/Full
        Link partner advertised pause frame use: Symmetric Receive-only
        Link partner advertised auto-negotiation: Yes
        Speed: 1000Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: pumbg
        Wake-on: g
        Current message level: 0x00000033 (51)
                               drv probe ifdown ifup
        Link detected: yes

Então, você vê que o Magic Packet está ativado ( Wake-on: g ).

Estou a activar este computador do estado desligado assim:

./wolcmd 00********** 192.168.0.104 255.255.255.0 7  # I've hidden the MAC address here

do Cygwin no Windows 10 usando Linha de comando do Depicus Wake On Lan .

O que eu não entendo é, por que preciso especificar o endereço IP e a máscara ou o número da porta?

Por que o endereço MAC não é suficiente? Alguém poderia elaborar ...

    
por Vlastimil 01.08.2018 / 17:01

3 respostas

11

Um pacote mágico de WoL pode ser enviado para a porta UDP 0, 7 ou 9 (dependendo do hardware em uso) ou como um pacote Ethernet não processado do tipo 0x0842. wolcmd optou por usar o método antigo, assumindo como padrão a porta 7.

Observe que wolcmd suporta a transmissão UDP, o que significa que você pode especificar 255.255.255.255 como o endereço e a máscara se o hardware e a rede suportarem transmissões TCP / IP. O pacote mágico só será interpretado pela máquina cujo endereço MAC contenha; todos os outros irão ignorá-lo.

    
por 01.08.2018 / 17:12
1

A sintaxe usada é: wolcmd [endereço mac] [endereço ip] [máscara de sub-rede] [número da porta = 7]

O [endereço IP] e a [máscara de sub-rede] são usados nos casos em que você precisa ativar um computador pela Internet. O [endereço IP] não precisa ser um IP numerado, você pode usar um endereço nomeado ou um endereço DDNS e seu DNS o converterá em um IP.

Ainda não confirmei isso, mas acho que, se você estiver despertando um computador em sua rede local, o [endereço IP] e a [máscara de sub-rede] não serão realmente necessários. Você pode definir ambos para 255.255.255.255 e provavelmente funcionaria.

O [número da porta] é opcional e pode ser deixado sem o padrão da porta para 7.

Outra aplicação possível do [endereço IP] é informar ao seu roteador para atribuir esse endereço IP a esse endereço MAC, uma vez que o computador esteja ativo e solicitando um endereço DHCP. Isso dependeria da inteligência do roteador e se esse endereço IP ainda não está atribuído. (não tenho certeza se / como isso funcionaria na internet).

    
por 01.08.2018 / 23:51
0

Talvez seja para ser usado em toda a Internet. Especificar um endereço IP iria enviá-lo para o roteador correto, onde poderia ser resolvido a partir daí. Se o computador tivesse um endereço IP estático na rede local, o roteador certamente poderia descobrir (talvez fosse necessária uma configuração mais avançada do que um roteador de consumidor, mas eu posso ver o aplicativo.

    
por 01.08.2018 / 22:57