Vá direto ao ponto: então qual é? Um IP está atribuído a uma interface, link ou dispositivo? O que distingue essas três coisas? Advertência: Esta é uma revisão crítica dos utilitários iproute2 ou documentação dos mesmos, para obter uma melhor compreensão deles (principalmente, ip
).
Muitas vezes, os livros de rede se referem a esses termos
- link
- dispositivo
- interface
A documentação do utilitário route2 define o link da seguinte forma:ip
link --- dispositivo de rede físico ou lógico.
Em outro lugar...
Um link refere-se a um dispositivo de rede.
dev NAME --- nome do dispositivo ao qual adicionamos o endereço
Comandos como este atribuem endereços IP a "dispositivos":
ip addr add 10.0.0.1/24 brd + dev eth0
Comandos como este iniciam "interfaces"
ip link set eth0 up
Compare o acima mencionado com os seguintes trechos de fontes respeitáveis:
O limite entre o host e o link físico é chamado de interface.
Redes de Computadores: Uma Abordagem Top-Down por Kurose & Ross 7ª Edição, p. 363.
Também
O limite entre o roteador e qualquer um de seus links também é chamado de interface.
Redes de Computadores: Uma Abordagem Top-Down por Kurose & Ross 7ª Edição, p. 363.
Mais tarde,
[...] um endereço IP está tecnicamente associado a uma interface, e não ao host ou roteador que contém essa interface.
Meu pensamento
Isso é ambíguo. É justo dizer que um dispositivo e uma interface são a mesma coisa? Ou um dispositivo implementa uma interface? Nesse caso, isso significaria que uma palavra como interface física pode se referir diretamente ao dispositivo e realmente significar a mesma coisa.
Eu entenderia um link como o fio físico ou fio simulado (protocolo sem fio como 802.11). A propósito, eu nem mencionei o termo "camada de link".
Ao contrário de outras disciplinas de engenharia maduras, a rede não possui termos bem definidos. Muitos são emprestados da engenharia elétrica ou da ciência da computação, mas usados de maneira um pouco diferente. Um grande número é cunhado pelos departamentos de marketing do fabricante. Esses termos significam o que os profissionais de marketing querem que signifique. Assim, você nunca poderá ter definições com as quais todos concordem.
Para adicionar à resposta do @Zac67, o termo link pode ter muitas definições, dependendo do contexto. Um link pode ser uma conexão física -- um cabo entre dois dispositivos, ou pode ser uma ideia lógica ou abstrata: como em um link entre o banco de dados e o módulo de telemetria.
O significado de dispositivo também depende do contexto. Do ponto de vista do sistema operacional do computador, os periféricos (interfaces de rede, armazenamento, entrada/saída) são dispositivos . De uma perspectiva mais ampla, os dispositivos são sistemas que estão conectados à rede.
Um engenheiro de software pode usar o dispositivo de maneira diferente de um engenheiro de rede. Basta estar ciente do contexto.
Não se aprofunde muito na armadilha da documentação do iproute2. Link, interface e dispositivo significam coisas diferentes para pessoas diferentes em contextos diferentes. No caso de ip link , está se referindo ao dispositivo de rede definido pelo kernel ("netdev") -- que pode ser físico como eth0, ou lógico como dummy0 ou eth0.10 / vlan10@eth0. Nesse contexto, link, interface e dispositivo são a mesma coisa; eles simplesmente escolheram a palavra link para o comando. (tinha que ser algo, e usar dev cria um conflito de uso de palavra-chave ... ip dev bond0 set dev eth0 master ;-) )
Para o comando ip addr , eles ficaram com dev por razões históricas. (é assim que foi chamado por eras. Vá olhar os documentos para SunOS dos anos 80.) E você pode ter vários endereços em um único "netdev" turvando ainda mais as águas do link/interface/dispositivo - o linux acabou com o eth0: 1 eth0:2 alias construído há muito tempo.
Como engenheiro de rede, essas três palavras significam coisas diferentes para mim.
Os endereços IP são atribuídos a interfaces (físicas ou virtuais). No entanto, interfaces ponto a ponto não numeradas podem funcionar sem um endereço IP próprio (por exemplo, uma interface serial simples). Além disso, apenas interfaces de camada 3 podem usar endereços IP.
Um dispositivo de camada 3 , como um host ou um roteador, pode ter várias interfaces, exigindo vários endereços IP. Dispositivos de camada inferior, como switches ou repetidores, não usam endereços IP para sua função básica. Observe que "dispositivo" também pode ser usado para praticamente qualquer componente técnico. Também pode se referir a um dispositivo no sentido de gerenciamento de hardware do Linux.
Um link é uma conexão ativa entre duas interfaces de camada física. Em redes de barramento como o obsoleto 10BASE5, mais de duas interfaces podem ser "vinculadas".
Em contextos especiais, os termos podem ser usados com outros significados, mas acima é a essência.
Observe que os detalhes da implementação e as configurações do host estão explicitamente fora do tópico aqui.