É necessário definir manualmente o endereço de difusão da interface?

8

Estou convertendo meus scripts de ferramentas de rede antigas:

ifconfig eth0 192.168.2.1 netmask 255.255.255.0

para iproute2:

ip link set eth0 up
ip addr add 192.168.2.1/24 dev eth0

e noto que os novos comandos não definem o endereço de broadcast por padrão.

O que foi:

1: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP 
    link/ether 1c:6f:65:c5:d6:d7 brd ff:ff:ff:ff:ff:ff
    inet 192.168.2.1/24 brd 192.168.2.255 scope global eth0

é agora:

1: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP 
    link/ether 1c:6f:65:c5:d6:d7 brd ff:ff:ff:ff:ff:ff
    inet 192.168.2.1/24 scope global eth0

Eu posso adicionar o endereço de broadcast ao comando ip addr , mas eu me pergunto se é necessário? Primeiro de tudo, como e onde esse endereço de broadcast é usado? O que pode quebrar se não estiver definido? Em segundo lugar, parece que a tabela de roteamento ainda tem as entradas corretas por padrão:

# ip route show table local dev eth0 scope link
broadcast 192.168.2.0  proto kernel  src 192.168.2.1 
broadcast 192.168.2.255  proto kernel  src 192.168.2.1 

Eu não posso testá-lo porque hoje em dia ninguém responde a ping -b .

    
por Powerman 24.12.2012 / 16:44

1 resposta

4

Não há necessidade de definir o endereço de transmissão manualmente, ele é determinado automaticamente pela rede IP e pela máscara de sub-rede.

    
por 26.12.2012 / 01:18