Como os endereços IP locais são separados dos públicos?

Como os endereços IP locais são separados dos públicos?

Como ferramentas como o ping ou qualquer outra ferramenta que use o protocolo tcp/ip sabem que, por exemplo, 192.168.1.1 ou 10.0.0.1 é um endereço IP local enquanto 8.8.8.8 ou 74.142.23.95 são públicos? 192.168.xx e 10.0.xx são codificados para serem preservados para uso local?

Responder1

Bem, eles sãoreservadoporRFC 1918para uso em redes privadas.

Mas isso na verdade não importa muito. Você pode obter um bloco de endereços IP "públicos" do RIPE ou qualquer outro lugar e usá-lo para sua rede privada, e tudo ainda funcionará. A reserva é necessária apenas por razões políticas, para permitir que os administradores configurem as suas próprias redes privadas sem qualquer problema.

Ferramentas comoping Não ligose um endereço é "privado" ou "local" ou "público". Eles simplesmente enviam um pacote para o endereço fornecido e seu sistema operacional analisa otabela de roteamentopara decidir para onde enviá-lo em seguida.

Por exemplo, quando você configura uma placa Ethernet no Windows com endereço IP 10.2.3.4/16(no formato de máscara de rede 255.255.0.0:) e gateway 10.2.0.1, ele adiciona as seguintes entradas à tabela de roteamento:

  • 10.2.3.4/32(máscara de rede 255.255.255.255) para interfaceLoopback

    (Seus próprios endereços são sempre roteados através da interface de loopback, eles nunca vão para a rede.)

  • 10.2.0.0/16(máscara de rede 255.255.0.0) para interfaceLocal Area Connection

    (Os endereços na sua própria sub-rede são, por definição, locais.)

  • 0.0.0.0/0(máscara de rede 0.0.0.0) para gateway10.2.0.1

    (Todo o resto não é local.)

Em outras palavras,você disse ao sistema operacionalque todos os endereços dentro do 10.2.0.0/16intervalo sejam locais e que o sistema operacional cuide de tudo.


Para visualizar a tabela de roteamento:

  • no Linux, ip route(IPv4) e ip -6 route(IPv6)
  • no Windows, route print(IPv4 em ≤XP, ambos v4/v6 em ≥Vista)
  • no Windows XP, netsh interface ipv6 show route(IPv6)
  • no Windows, Linux, BSD e outros semelhantes ao Unix, netstat -r -n(IPv4)
  • no Linux e alguns semelhantes ao Unix, netstat -r -n -6(IPv6)

A edição da tabela de roteamento pode ser feita com as mesmas ferramentas. Por exemplo, para marcar tudo 172.16.0.0/16como local, você pode usar ip route add 172.16.0.0/16 dev eth0no Linux.

Responder2

Endereços IP públicos e privados são definidos na RFC. Estes são endereços IP privados:

10.0.0.0/8

172.16.0.0/12

192.168.0.0/16

Além disso, estes endereços IP são loopback:

127.0.0.0/8

Outros são públicos.

A maioria das ferramentas não precisa conhecer endereços IP públicos ou privados.

informação relacionada