Roteamento / sub-redes IPv4

0

Suponha que haja uma configuração como abaixo:

                                  ------
                                -INTERNET-
                                  ------
                                     |
                                     |
                                     |
                                     | 
                                ___(ETH1)___ 
                               |            |
(SUBNET 1)---------------(ETH0)|   ROUTER   |(ETH2)---------------(SUBNET 2)
                               |____________|
                                   (ETH3)
                                      |
                                      |
                                      |
                                      |
                                  [SWITCH]
                                   /  |  \
                                  /   |   \
                                 /    |    \
                                /     |     \
                             PC#1    PC#2   PC#3

Minhas primeiras perguntas são sobre o roteador. Tenho a impressão de que cada interface do roteador tem seu próprio endereço IP e máscara de sub-rede, ambos fornecidos pelo ISP. Por exemplo, o ETH3 poderia ter o IP: 192.168.1.20/24. Isso significa que o ID de rede (id da sub-rede) é 192.168.1 e, portanto, todos os servidores na sub-rede que se conectam à interface ETH3 terão IPs no formato 192.168.1.XX. Está tudo correto?

Em seguida, estou um pouco incerto sobre como um pacote é roteado da Internet para, digamos, o PC # 3. Suponha que o PC 3 tenha o IP 192.168.1.45 e faça uma solicitação para www.facebook.com. O seguinte está correto? O PC # 3 faz parte da sub-rede 192.168.1 (que se conecta à interface 192.168.1.20 ETH3). Então, www.facebook.com vê uma solicitação feita a partir de 192.168.1.20 (interface ETH3). Ele envia uma resposta a essa solicitação, que é eventualmente roteada para ETH1 e, em seguida, para ETH3. Finalmente, quando a resposta chega ao switch, o switch lê o endereço MAC no cabeçalho do pacote de resposta e vê que o PC nº 3 fez o pedido. Assim, ele envia o pacote para o PC nº 3.

Se isso estiver correto, estou um pouco confuso sobre por que é necessário que o PC nº 3 tenha seu próprio endereço IP em primeiro lugar, se a única informação usada para obter o pacote de www.facebook.com para o PC # 3 é o endereço IP da interface do roteador ao qual o PC está conectado + o endereço MAC do PC.

Finalmente, tenho uma pergunta sobre as interfaces ethernet. ETH0, ETH1, etc. são apenas nomes genéricos dados às portas ethernet? Então, se meu laptop tiver uma porta ethernet, isso também será chamado de ETHO? Na mesma linha, as portas Ethernet do switch também são enumeradas da mesma maneira (ETH0, ETH1, ETH2).

Qualquer esclarecimento sobre isso seria muito apreciado. Obrigado!

    
por Philip 06.09.2015 / 22:33

4 respostas

3

I am under the impression that each router interface has its own IP address and subnet mask, both of which are given to them by the ISP.

Se uma interface estiver conectada a algo que seu provedor de serviços de Internet controla, você precisará usar um IP atribuído pelo seu ISP. Se estiver conectado a algo que você controla, você precisará atribuir endereços IP por conta própria.

Tecnicamente, você pode ter um roteador "somente interno" que conecta apenas duas ou mais sub-redes privadas, e o acesso a outras sub-redes não seria possível. Não há exigência estrita de que um roteador distribua o tráfego que não corresponda a nenhuma rota conhecida em sua tabela de roteamento para um gateway padrão.

ETH3 could have the IP: 192.168.1.20/24. This means that the network ID (id of the subnet) is 192.168.1, and thus all servers in the subnet connecting to the ETH3 interface will have IP's of the form 192.168.1.XX. Is all this correct?

Isso também significa que você obtém uma rota "livre" conectada diretamente com base na atribuição de IP / sub-máscara - o roteador sabe que pode alcançar 192.168.1.XX via ETH3, portanto, uma entrada será colocada na tabela de roteamento simplesmente devido a esse fato.

Next, I am a little uncertain as to how a packet is routed from the internet to, say, PC #3.

  • O PC # 3 quer falar com facebook.com
  • O PC # 3 emite uma pesquisa de DNS e encontra o endereço do facebook.com
  • O PC # 3 usa a pilha TCP / IP local para falar com o facebook.com.
  • A pilha TCP / IP consulta a tabela de roteamento local para ver se o endereço IP do facebook.com corresponde a qualquer rota.
  • Como o PC # 3 é um PC padrão, sua tabela de roteamento provavelmente será bem simples e ficará assim (simplificada):
    • 127.0.0.1/8 através da interface virtual localhost
    • 192.168.3.0/24 via NIC local.
    • O gateway padrão que deve ser o IP do roteador (que deve ser um endereço 192.168.3.XXX/24 na mesma sub-rede que o PC nº 3).
  • A pilha TCP / IP tentará encontrar uma rota correspondente e, se nenhuma for encontrada, enviará tráfego para o gateway padrão, se existir. Como o IP do facebook.com não corresponderá a nenhuma dessas rotas, o PC nº 3 enviará o tráfego para o gateway padrão.
  • O roteador recebe tráfego em eth3 .
  • A pilha TCP / IP do roteador consultará a tabela de roteamento para ver se ela pode encontrar um destino correspondente. Faz o mesmo que o PC faz. A tabela de roteamento do roteador será algo como isto, embora (eu criei endereços para as outras interfaces como um exemplo):
    • 192.168.0.0/24 via eth0
    • 192.168.2.0/24 via eth2
    • 192.168.3.0/24 via eth3
    • Gateway padrão via eth1
  • A pilha TCP / IP do roteador consulta sua tabela de roteamento para ver se o endereço IP do facebook.com corresponde a qualquer rota e, se nenhuma for encontrada, enviará tráfego para o gateway padrão, se existir. Como o IP do facebook.com não corresponderá a nenhuma dessas rotas, o PC nº 3 enviará o tráfego para o gateway padrão.
  • eth1 terá que ter o NAT configurado, então, nesse ponto, o NAT altera o endereço de origem para parecer que veio de eth1 e lembra esse fato quando recebe uma resposta.

E assim por diante. O mesmo processo acontece no seu provedor de serviços de Internet, no provedor de provedor de serviços de Internet e assim por diante até chegar ao destino.

... I am slightly confused as to why it is necessary for PC#3 to have its own IP address in the first place

Quando o tráfego cruza os roteadores, ele deixa uma rede e entra em outra. O endereço MAC original é perdido quando o tráfego cruza um roteador. IP significa Internetworking Protocol - é um esquema de endereço projetado para permitir que qualquer computador alcance qualquer outro computador globalmente - e se o computador de destino não estiver na mesma rede, uma hierarquia de roteadores deve encaminhar o tráfego para frente e para trás.

Finally, I have a question about the ethernet interfaces. Are ETH0, ETH1, etc. just generic names given to ethernet ports

O esquema ethX é apenas uma convenção - por padrão, o Linux nomeará o primeiro a ver eth0 , o próximo eth1 e assim por diante. Os nomes são atribuídos por udev ou systemd e persistem pelo endereço MAC. O nome pode ser alterado para o que você quiser.

    
por 07.09.2015 / 00:14
0

O ISP fornece 1 endereço IP (seja estático ou dinâmico). Isso geralmente é atribuído ao seu roteador. O resto de seus dispositivos normalmente só obtém versões NAT do endereço IP. Você pode ler mais sobre o site NAT on Ciscos - eles dão uma boa explicação de como funciona: link

Basicamente, o PC3 não tem seu próprio endereço IP global, ele tem apenas um endereço IP exclusivo em sua própria rede.

Em relação à sua pergunta de porta ethernet - o nome é dado pela interface do adaptador, isso depende totalmente do fabricante e dos drivers. Normalmente, embora eles sejam chamados de coisas como "Conexão Local"

    
por 06.09.2015 / 23:23
0

I am under the impression that each router interface has its own IP address and subnet mask, both of which are given to them by the ISP.

Somente a interface voltada para WAN (ETH1, neste caso) teria um endereço IP (externo / público) atribuído pelo ISP. As outras interfaces teriam um endereço IP configurado manualmente (interno / privado) (neste caso particular).

For example, ETH3 could have the IP: 192.168.1.20/24. This means that the network ID (id of the subnet) is 192.168.1, and thus all servers in the subnet connecting to the ETH3 interface will have IP's of the form 192.168.1.XX. Is all this correct?

Correto, mesmo que o ID da sub-rede seja 192.168.1.0 para ser exato. link

PC#3 is part of the 192.168.1 subnet (which connects to the 192.168.1.20 ETH3 interface). So, www.facebook.com sees a request is made from 192.168.1.20 (ETH3 interface). It sends a response to this request, which is eventually routed to ETH1 and then to ETH3. Finally, when the response reaches the switch, the switch reads the MAC address in the response packet header, and sees that PC#3 made the request. Thus, it sends the packet to PC#3.

Não, o facebook.com veria um pedido do seu endereço IP externo (o da interface ETH1). Como os endereços IP privados não são roteáveis na Internet pública, o endereço IP privado do PC (192.168.1.x) é “traduzido” para o endereço IP público / externo por meio de um processo conhecido como NAT (Network Address Translation). O roteador controla essas traduções em uma tabela chamada NAT, para saber de onde veio a solicitação e para onde enviar a resposta do servidor. link

If this is correct, I am slightly confused as to why it is necessary for PC#3 to have its own IP address in the first place, if the only information used to get the packet from www.facebook.com to PC#3 is the IP address of the router interface the PC is connected to + the MAC address of the PC.

Como os roteadores não funcionam com endereços MAC (camada 2 do modelo OSI), eles trabalham com endereços IP (camada 3). O roteador sabe para qual endereço IP o pacote se destina e, portanto, encaminha o pacote ao switch, que procura o endereço IP em sua tabela ARP para encontrar o endereço MAC correspondente e enviar o quadro na interface / porta apropriada. link
link

    
por 07.09.2015 / 00:05
0

My first questions are regarding the router.

Se é um roteador, -)

Lembre-se que muitos dispositivos comercializados como roteadores, eles têm um roteador e ligam lá, eles rotear e alternar, e todas as portas LAN externas em muitos desses dispositivos, são portas de switch em vez de interfaces de roteador.

Mas, para o seu diagrama, com a distinção que você faz entre o roteador e o switch, digamos que o roteador seja um roteador e o switch seja um switch.

I am under the impression that each router interface has its own IP address and subnet mask,

Sim, faz.

both [router interfaces]... are given to them by the ISP.

Do que você está falando

Você diz "ambos", mas sua foto mostra quatro.

E apenas um desses 4 tem um IP do ISP, embora mesmo isso possa ser definido estaticamente, se o ISP lhe der um IP estático, você pode obtê-lo pelo DHCP do ISP ou configurá-lo você mesmo.

For example, ETH3 could have the IP: 192.168.1.20/24. This means that the network ID (id of the subnet) is 192.168.1, and thus all servers in the subnet connecting to the ETH3 interface will have IP's of the form 192.168.1.XX. Is all this correct?

Acho que a terminologia está certa ou quase certa ... (surpreendentemente). Mas por que você diz "todos os servidores". Por que você está se preocupando se um computador conectado a essa interface é um "servidor"? (o que você quer dizer com "servidor" - já que é um termo ambíguo)

E em livros que eu li, geralmente as interfaces do roteador tendem a ser 0,1 ou 0,2 e.t.c. geralmente o endereço de sub-rede é 0,0 e as interfaces de roteador nessa sub-rede são +1 ou +2 do que, e. .1 ou 2. por exemplo. pode haver duas interfaces de roteador em uma sub-rede.

Next, I am a little uncertain as to how a packet is routed from the internet to, say, PC #3. Suppose PC#3 has the IP 192.168.1.45 and makes a request to www.facebook.com. Is the following correct? PC#3 is part of the 192.168.1 subnet (which connects to the 192.168.1.20 ETH3 interface). So, www.facebook.com sees a request is made from 192.168.1.20 (ETH3 interface). It sends a response to this request, which is eventually routed to ETH1 and then to ETH3. Finally, when the response reaches the switch, the switch reads the MAC address in the response packet header, and sees that PC#3 made the request. Thus, it sends the packet to PC#3.

De jeito nenhum.

Para começar, há o NAPT. também conhecido como NAT / PAT, que é uma forma de NAT. E o seguinte seria verdade mesmo sem o PAT. Se você for a www.whatismyip.com, verá que a Internet nunca verá um endereço IP como 192.168

Você deve saber isso antes mesmo de saber o que é um roteador! E muito antes de você saber o que é uma sub-rede

Você não notou que muitos computadores das pessoas têm endereços IP como 192.168? Você percebe que eles entrariam em conflito se estivessem todos na Internet?

If this is correct,

Não foi

I am slightly confused as to why it is necessary for PC#3 to have its own IP address in the first place, if the only information used to get the packet from www.facebook.com to PC#3 is the IP address of the router interface the PC is connected to + the MAC address of the PC.

A maneira como um roteador funciona é que os computadores dentro ou fora de uma interface não conhecem os endereços MAC dos computadores em outra interface.

E a questão é que, tecnicamente, você poderia ter um roteador com 2 portas, um lado da internet e um lado da LAN, e um switch, e é assim que a maioria dos "roteadores" das pessoas é. E nessa situação, tecnicamente, teoricamente, e eles não são construídos assim, mas tecnicamente .. Se o TCP / IP fosse muito diferente, você poderia acabar com os endereços IP ... na LAN. Só não será tão eficiente .. em uma LAN enorme. Como os endereços IP são hierárquicos e os endereços MAC são planos. Meios hierarquicos e. você pode restringir um computador a uma sub-rede, como restringir uma pessoa a um país ao enviar uma carta. Você pode chegar até eles mais rápido.

Finally, I have a question about the ethernet interfaces. Are ETH0, ETH1, etc. just generic names given to ethernet ports? So, if my laptop has an ethernet port, will that also often be referred to as ETHO? In the same vein, are switch ethernet ports also enumerated in the same way (ETH0, ETH1, ETH2).

Eu não tenho ideia do que você tem em mente por "nome genérico",

mas de qualquer forma, eu não sei .. Eu sei o que isso significa e eu usei em janelas, mas eu não sei a natureza desse nome - particularmente em windows quase nunca se vê nomes como esse em windows , mas eu acho que talvez um programa chamado tcpdump (originalmente um programa * nix) mas que tenha uma versão windows, possa rodar no windows, chamá-los assim ... então talvez seja algo fundamental pelo menos de alguma forma (eg no mínimo talvez uma interface seja 0 e uma é 1, etc, mesmo se eth0 e eth1 etc forem mais terminologia * nix e terminologia Cisco ios, ou terminologia não Windows colocada no Windows.

    
por 07.09.2015 / 00:14