Quando eu executo o comando arp, recebo o seguinte:
mark@mark-P8Z77-I-0:~$ arp
Address HWtype HWaddress Flags Mask Iface
192.168.1.128 ether 08:86:3b:c8:d8:09 C eth0
192.168.1.4 ether e0:91:f5:7c:7c:34 C eth0
192.168.1.110 ether 9c:d3:6d:b1:d3:49 C eth0
192.168.1.101 ether 94:10:3e:48:60:0d C eth0
mark-N3050T ether d0:17:c2:ad:ff:58 C eth0
192.168.1.117 ether b8:27:eb:ad:2e:72 C eth0
192.168.1.129 (incomplete) eth0
192.168.1.103 ether ec:1a:59:cb:42:25 C eth0
192.168.1.111 ether 54:4a:16:02:54:a8 C eth0
192.168.1.127 ether 84:ba:3b:05:6d:45 C eth0
192.168.1.106 ether a4:77:33:2b:29:40 C eth0
192.168.1.122 ether 00:18:dd:04:6a:cc C eth0
mark-N53Jf ether 48:5d:60:71:7f:be C eth0
gateway ether 28:c6:8e:20:a8:e5 C eth0
Todos os três nomes de host presentes no relatório também podem receber ping usando ping hostname
A tabela arp, / proc / net / arp contém apenas endereços IP:
mark@mark-P8Z77-I-0:~$ cat /proc/net/arp
IP address HW type Flags HW address Mask Device
192.168.1.128 0x1 0x2 08:86:3b:c8:d8:09 * eth0
192.168.1.4 0x1 0x2 e0:91:f5:7c:7c:34 * eth0
192.168.1.110 0x1 0x2 9c:d3:6d:b1:d3:49 * eth0
192.168.1.101 0x1 0x2 94:10:3e:48:60:0d * eth0
192.168.1.138 0x1 0x2 d0:17:c2:ad:ff:58 * eth0
192.168.1.117 0x1 0x2 b8:27:eb:ad:2e:72 * eth0
192.168.1.129 0x1 0x0 00:00:00:00:00:00 * eth0
192.168.1.103 0x1 0x2 ec:1a:59:cb:42:25 * eth0
192.168.1.111 0x1 0x2 54:4a:16:02:54:a8 * eth0
192.168.1.127 0x1 0x2 84:ba:3b:05:6d:45 * eth0
192.168.1.106 0x1 0x2 a4:77:33:2b:29:40 * eth0
192.168.1.122 0x1 0x2 00:18:dd:04:6a:cc * eth0
192.168.1.121 0x1 0x2 48:5d:60:71:7f:be * eth0
192.168.1.1 0x1 0x2 28:c6:8e:20:a8:e5 * eth0
Qual serviço o comando arp e o ping usam para resolver o nome do host?
Eu tentei vários, mas o mais próximo que eu fico é avahi-browse. No entanto, ele informa mais nomes de host em minha rede do que relatórios arp e todos têm .local
anexado ao nome.
Além disso, dois dos três nomes de host que arp relatórios são sistemas ubuntu remotos. Não me lembro de realizar qualquer configuração especial nesses sistemas para permitir esse comportamento. O nome do host "gateway" é fornecido pelo roteador. Um dos sistemas conectados é um sistema raspiano.
Como eu configuraria o raspian para esse comportamento?
Como os nomes de host são transferidos?
Qual comando eu usaria para resolver esses nomes de host?
Uma nota final: Os nomes de host parecem vir e ir com base em como os dados são obsoletos, mas eu não investiguei totalmente isso. Eu só sei que eu preciso fazer ping de um determinado host (ubuntu) para que ele capture nomes de host de outros sistemas. Eu não escorei quais consultas mais rapidamente preenchem essa informação.
Depois de analisar os comentários a partir das 20h de 18 de dezembro, 18, posso compartilhar as seguintes informações:
A linha de hosts em /etc/nsswitch.conf
:
hosts: files mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] dns mdns4 myhostname
não há hosts remotos listados em /etc/hosts
avahi-resolve-address
resolve o seguinte:
192.168.1.1 Failed to resolve: Timeout reached (is "gateway")
192.168.1.117 raspberrypi.local (shows in arp report as 192.168.1.117)
192.168.1.138 mark-3050T.local (shows in arp as mark-3050T)
192.168.1.130 is currently offline but is similar to 192.168.1.130
Embora o mark-N3050T seja relatado pelo arp, o ping falha.
ping mark-N3050T.local
falha, mas ping 192.168.1.138
é bem-sucedido
O gateway de ping é bem-sucedido.
ping raspberrypi.local
é bem-sucedido, apesar de o raspberrypi não ser relatado pelo arp
Quando eu estava escrevendo minha postagem original, ping mark-N3050T
funcionaria, então está ocorrendo algum envelhecimento que remove esse nome de host. Eu não encontrei o comando que irá atualizar o nome do host. A diferença entre arp e ping é que arp está resolvendo um endereço IP para um nome de host enquanto o ping está executando o oposto. No entanto, eu esperaria simetria nas respostas.
Estou apenas buscando isso para aumentar minha compreensão de como funciona a rede LAN. Eu aprecio qualquer um que esteja disposto a me ajudar.