uso prático do arquivo / etc / networks

18

Qual é o uso prático do /etc/networksarquivo? Pelo que entendi, pode-se dar nomes às redes neste arquivo. Por exemplo:

root@fw-test:~# cat /etc/networks
default         0.0.0.0
loopback        127.0.0.0
link-local      169.254.0.0
google-dns      8.8.4.4
root@fw-test:~# 

No entanto, se eu tentar usar esse nome de rede, por exemplo, no iputilitário, ele não funcionará:

root@fw-test:~# ip route add google-dns via 104.236.63.1 dev eth0
Error: an inet prefix is expected rather than "google-dns".
root@fw-test:~# ip route add 8.8.4.4 via 104.236.64.1 dev eth0
root@fw-test:~#

Qual é o uso prático do /etc/networksarquivo?

Martin
fonte

Respostas:

15

Conforme escrito na página de manual , o /etc/networksarquivo deve descrever nomes simbólicos para redes. Com rede, entende-se o endereço de rede com .0final no final. Apenas redes simples Classe A, B ou C são suportadas.

No seu exemplo, a google-dnsentrada está errada. Não é uma rede A, B ou C. É uma relação de endereço IP, nome do host e, portanto, a que pertence /etc/hosts. Na verdade, a defaultentrada também não é conforme.

Vamos imaginar que você tenha um endereço IP 192.168.1.5da sua rede corporativa. Uma entrada em /etc/networkpoderia ser:

corpname 192.168.1.0

Ao usar utilitários como routeou netstat, essas redes são convertidas (se você não suprimir a resolução com o -nsinalizador). Uma tabela de roteamento pode parecer com:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
corpname        *               255.255.255.0   U     0      0        0 eth0
caos
fonte
4

O ipcomando também nunca usa um nome de host para entrada, portanto, seu exemplo é pouco relevante. Você também colocou um nome de host /etc/networks, não um nome de rede!

As entradas de /etc/networkssão usadas por ferramentas que tentam converter números em nomes, por exemplo, o routecomando (obsoleto) . Sem uma entrada adequada, mostra:

# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.1.254   0.0.0.0         UG    0      0        0 eth0
192.168.0.0     *               255.255.254.0   U     0      0        0 eth0

Se agora eu adicionar uma linha mylocalnet 192.168.0.0a /etc/networks:

# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.1.254   0.0.0.0         UG    0      0        0 eth0
mylocalnet      *               255.255.254.0   U     0      0        0 eth0

Na prática, nunca é realmente usado.

Wurtel
fonte