O ifconfig
comando despeja muitas informações em você, especialmente se você tiver muitas interfaces e não souber de onde elas vêm. Eu li a página do tutorial "Comando Ifconfig - Explicado em detalhes" , que fornece um ótimo resumo da maioria das informações no ifconfig
. Mas não contém todas as informações que eu quero (e também pode estar desatualizado em 16 anos).
Usando ip addr show eth0
:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:e2:80:18 brd ff:ff:ff:ff:ff:ff
inet 10.0.2.15/24 brd 10.0.2.255 scope global eth0 valid_lft forever preferred_lft forever
Acho difícil analisar parte da saída.
- Em
eth0
:<…>
descreve… as capacidades da interface? Incerto onde posso encontrar o conjunto completo de opções, incerto como elas são chamadas, não faço ideia do que pesquisar no Google. Quais são as outras opções?state UP
– Eu sei que há tambémstate DOWN
estate RUNNING
. Estas são todas as construções de software, certo? Nada está mudando fisicamente quando eu corroip link set dev eth0 down
, certo? Então, como o kernel age de maneira diferente quando esse estado muda? esse estado muda?group default
– grupos de interfaces. Qual é o problema único que eles resolvem?
- Debaixo
inet
- O que
scope global
significa? – Como um IP privado pode ter um escopo global? o que estou perdendo?
- O que
Qual é a gramática da saída deste comando?
Aqui estão as partes que já consigo analisar, para referência para qualquer outra pessoa com a mesma dúvida.
eth0
é o nome da interface. Pode ser qualquer string:mtu 1500
unidade máxima de transmissão = 1500 bytes, este é o maior tamanho que um quadro enviado por essa interface pode ter. Esse número geralmente é limitado pelo limite de 1500 do protocolo Ethernet. Se você enviar um pacote maior e ele chegar a uma interface ethernet, o quadro será fragmentado e sua carga útil transmitida em 2 ou mais pacotes. Não há realmente nenhum benefício nisso, então é melhor seguir os padrões.qdisc
pfifo_fast
disciplina de enfileiramento = três pipes de first in first out, isso determina como uma interface escolhe qual pacote transmitir em seguida, quando está sendo sobrecarregado.group default
Os grupos de interface fornecem uma única interface aos clientes combinando os recursos das interfaces agregadas neles.qlen 1000
comprimento da fila de transmissão = 1000 pacotes. O 1000º pacote será enfileirado, o 1001º será descartado.link/ether
significa que o protocolo da camada de enlace éethernet
:brd
significa transmissão. Este é o endereço que o dispositivo definirádestination
quando enviar uma transmissão. Uma interface vê todo o tráfego no fio em que está, mas é educada o suficiente para ler apenas os dados endereçados a ela. A maneira como você endereça uma interface é usando seu endereço específico ou o endereço de broadcast.inet
significa que o protocolo da camada de rede éinternet
(ipv4
)lft
significa vida. Se você obtiver esse endereço por meiodhcp
de , terá uma vida útil válida para a concessão do endereço IP. E apenas para tornar as transferências um pouco mais fáceis, uma vida útil (provavelmente) mais curta .Endereços com escopo global são globais do ponto de vista do host, ou seja, não estão restritos ao host ou ao link local. O host não se importa, e não faz nada diferente, caso o endereço esteja dentro dos intervalos especificados na RFC1819 (Address Allocation for Private Internets). Os endereços "privados" são privados apenas por convenção. O host não se importa com qual roteador faz o NAT e com quantos saltos do host a tradução de endereços privados para públicos é feita. Além disso, você também pode implementar NAT com outros endereços.