¿Una puerta de enlace de una subred debe ser una computadora "real"?

13

¿Es un Gateway siempre una computadora real o simplemente una entidad "lógica", que puede estar en cualquier dirección, excepto la IP de transmisión?

Semo
fuente
99
El término moderno y posiblemente más correcto para una puerta de enlace es enrutador . Los enrutadores pueden existir únicamente en software, las computadoras convencionales como las PC, las computadoras portátiles y los sistemas de servidor se pueden usar como enrutadores, pero generalmente se usan dispositivos de hardware dedicados
HBruijn
2
¿Qué quieres decir con "entidad lógica"?
Barmar
2
@HBruijn, en la mayoría de los casos, una puerta de enlace es un enrutador. El término general es que una puerta de enlace es el host de la red a la que otros hosts envían el tráfico destinado a una red diferente. Eso no significa que deba ser un enrutador. Podría ser un proxy, ALG, etc. Además, puede haber un caso de esquina donde cualquier tráfico destinado a una red diferente debe ser atrapado y no reenviado por la puerta de enlace, en cuyo caso no es un enrutador porque no está enrutando paquetes entre redes.
Ron Maupin el
Apuesto a que un sistema que sea capaz de tomar decisiones de reenvío basadas en las direcciones IP de destino no tiene que estar completo ... así que no, un enrutador no necesita ser una computadora (lo mismo aplica un nivel más abajo para puentes y uno nivel alto para puertas de enlace, aunque es posible en diferentes grados. Sin embargo, cada uno de estos sistemas es típicamente un dispositivo (o colección de dispositivos) que se puede configurar administrativamente o mediante aplicaciones adicionales (como protocolos de enrutamiento), e incluso poder procesar un configuración, estas cosas tienden a ser computadoras (especializadas).
Hagen von Eitzen
@Barmar Me refiero a si una puerta de enlace debe ser un dispositivo de hardware especializado como un puente o enrutador, o si podría ser solo una información como una configuración en un servidor, que es algo mutable, si piensas en términos de lenguajes de programación .
Semo

Respuestas:

29

La ruta predeterminada (también conocida como dirección de puerta de enlace) debe ser propiedad de algo que sea capaz de reenviar paquetes al resto de Internet y que esté dispuesto a hacerlo. No tiene que ser la dirección IP "principal" de la persona que lo posee (lo que sea que eso signifique). Puede ser una dirección lógica que flota entre dos o más dispositivos, y en configuraciones de alta disponibilidad a menudo lo es.

El único requisito, para que el enrutamiento funcione, es que cualquier dispositivo que actualmente posea y anuncie la dirección, ese dispositivo puede y enrutará el tráfico.

MadHatter
fuente
66
... O al menos pretenderlo.
Shadur
2
@Shadur Estoy interesado en cómo puede funcionar el enrutamiento si la ruta predeterminada solo pretende en realidad, ya sabes, enrutar el tráfico.
MadHatter
1
El enrutamiento en sí no funcionará, pero si todo lo que desea permitir es navegar, puede hacer que la "puerta de enlace" intercepte y ejecute un proxy transparente en los puertos 53, 80 y 443, y mantenga el sistema lo más aislado posible.
Shadur
77
OKAY. No estoy en desacuerdo, pero eso no es enrutamiento. Mantengo mi afirmación de que para que el enrutamiento funcione, el enrutador debe enrutar en realidad, y parece que no estarías en desacuerdo con eso.
MadHatter
1
Punto justo, pero "puerta de enlace" como se usa en esta pregunta es la ruta predeterminada, es decir, el siguiente salto del último recurso. Eso tiene que ser capaz de obtener no sólo a las subredes internas que usted no tiene rutas específicas para, pero con todo lo demás así .
MadHatter
15

La dirección IP de la puerta de enlace puede ser cualquier dirección IP de host válida en la subred, es decir, no la dirección de red ni la dirección de difusión. Esta dirección IP no necesita pertenecer a una sola computadora o enrutador, puede ser una dirección IP "flotante" utilizada por varias puertas de enlace. Consulte los artículos de Wikipedia sobre HSRP , VRRP , GLBP o CARP .

Por ejemplo, cuando la subred es 172.16.23.0/25, entonces:

  • la dirección de red es 172.16.23.0,
  • la dirección de transmisión es 172.16.23.127, y
  • el rango de direcciones de host válidas es de 172.16.23.1 hasta 172.16.23.126, inclusive.

La puerta de enlace debe ser cualquiera de estas direcciones de host válidas, por ejemplo, 172.16.23.65. La configuración de su computadora sería, por ejemplo:

  • Dirección IP: 172.16.23.5
  • Máscara de subred: 255.255.255.128
  • Puerta de enlace predeterminada: 172.16.23.65

Ahora agregando uno de los protocolos de redundancia de primer salto, las pasarelas (enrutadores) reales pueden tener las direcciones IP 172.16.23.1 y 172.16.23.2 pero usar la dirección IP virtual de 172.16.23.65 para presentarse como la puerta de enlace predeterminada a la subred .

Tommiie
fuente
9

La "entidad lógica" en su uso es un poco confusa. Pero intentaré responderlo lo mejor que pueda.

Desde mi experiencia, una puerta de enlace en una configuración IP suele ser un dispositivo físico. Si bien no tiene que ser una computadora en el sentido tradicional (también puede ser un dispositivo de red), tiene que ser un dispositivo.

Como ya sabrá, el propósito de una puerta de enlace predeterminada es actuar como una entidad de reenvío para todas las solicitudes que a.) La computadora no tiene en su tabla de enrutamiento o tiene una entrada que indica al sistema que reenvíe la solicitud a un IP que resulta ser la puerta de enlace y / o b.) Que están fuera del dominio de difusión. La puerta de enlace predeterminada nunca se usa en situaciones en las que dos hosts están en el mismo dominio de transmisión (es decir, una topología de red creada por un conmutador) porque el sistema puede usar la dirección de transmisión de la subred para encontrar la dirección MAC de un sistema que posee una dirección IP particular.

En resumen, para responder a su pregunta, técnicamente, puede configurar su puerta de enlace predeterminada como cualquier dirección IP en una red conectada. Windows o la mayoría de los demás sistemas operativos no lo detendrán porque a menudo no realizan la verificación de los detalles de TCP / IP. Si lo está configurando, lo más probable es que tenga conocimientos técnicos suficientes para comprender la distinción. Sin embargo, si es la dirección IP de un dispositivo que no puede reenviar, provocará errores en las aplicaciones que dependen del enrutamiento (es decir, un navegador web) porque el dispositivo no estará preparado con una tabla de enrutamiento o un servicio de enrutamiento para reenviar la solicitud.

Sin embargo, alguien mucho más experimentado que yo debería poder corregirme fácilmente si me equivoco.

TL; DR: un dispositivo físico, muy probablemente.

Kelvintechie
fuente
Puede tener varias subredes IP diferentes en el mismo dominio de difusión. En tales casos, el tráfico entre esos hosts fluirá a través de sus puertas de enlace predeterminadas a menos que se agreguen entradas adicionales a las tablas de enrutamiento de hosts o se utilicen redireccionamientos ICMP.
Peter Green el
@PeterGreen Sí, hay muchos casos extraños. Por ejemplo, digamos que 192.168.0.0/24 y 10.0.0.0/24 están en la misma LAN Ethernet física con la puerta de enlace para que ambos sean el mismo enrutador físico en 192.168.0.1 y 10.0.0.1 respectivamente. Si 192.168.0.100 hace ping a 10.0.0.100, el primer viaje de ida y vuelta se retransmitirá a través de la puerta de enlace. La puerta de enlace también puede enviar redireccionamientos ICMP a cada host diciéndoles que están en la misma LAN. Si es así, cada host enviará solicitudes ARP para obtener las direcciones MAC de sus pares y toda comunicación adicional se realizará directamente entre los pares (no a través de la puerta de enlace).
Alex Hajnal
Tenga en cuenta que con el ejemplo anterior, los hosts deben ser impulsados ​​(a través de una redirección ICMP) para transmitir una solicitud ARP para la dirección MAC de un par en una red extranjera. En ausencia de una redirección, los hosts no harán solicitudes ARP de redes extranjeras.
Alex Hajnal
5

Las entradas de la tabla de enrutamiento resuelven una subred en una puerta de enlace o en un adaptador de red.

Una tabla de enrutamiento típica para un dispositivo en una red privada podría, si omite las cosas innecesarias, verse como

0.0.0.0/0 via 192.168.0.1
192.168.0.0/24 dev eth0

La ruta más específica gana para cada destino, por lo que la ruta de subred tiene prioridad sobre la ruta predeterminada para las direcciones en la subred.

La dirección de la puerta de enlace, a su vez, se resuelve a través de la tabla de enrutamiento, que determina la interfaz de red a la que se proporciona, así como el direccionamiento en la capa inferior.

Entonces, para un paquete 1.1.1.1, el destino se busca en la tabla de enrutamiento, devolviendo la ruta predeterminada, que tiene una puerta de enlace. La puerta de enlace se busca nuevamente, devolviendo la interfaz Ethernet.

Ethernet tiene direcciones MAC, por lo que se realiza una búsqueda ARP para la dirección de la puerta de enlace, y la dirección MAC de la puerta de enlace se usa para el paquete saliente (que todavía usa la dirección de destino adecuada en su encabezado IP).

Otros transportes de nivel inferior funcionan de manera diferente, por ejemplo, los enlaces PPP tienen una "dirección de igual", por lo que la ruta de su dispositivo utiliza una máscara de red de / 32, y omiten la resolución ARP y simplemente envían paquetes como "difusión" a través del enlace PPP.

Algunas pilas de IP requieren la creación manual de la ruta del dispositivo, lo que lo hace un poco más obvio:

ifconfig eth0 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255 up
route add -net 192.168.0.0 netmask 255.255.255.0 dev eth0
route add default via 192.168.0.1
Simon Richter
fuente