La passerelle d'un sous-réseau doit-elle être un «vrai» ordinateur?

13

Une passerelle est-elle toujours un véritable ordinateur ou simplement une entité "logique", qui peut se trouver sur n'importe quelle adresse, à l'exception de l'adresse IP de diffusion?

Semo
la source
9
Le terme moderne et sans doute plus correct pour une passerelle est routeur . Les routeurs peuvent exister uniquement dans les logiciels, les ordinateurs conventionnels tels que les PC, les ordinateurs portables et les systèmes de serveurs peuvent être utilisés comme routeurs, mais des périphériques matériels généralement dédiés sont utilisés
HBruijn
2
Qu'entendez-vous par «entité logique»?
Barmar
2
@HBruijn, dans la plupart des cas, une passerelle est un routeur. Le terme général est qu'une passerelle est l'hôte du réseau auquel d'autres hôtes envoient le trafic qu'elle destinait à un autre réseau. Cela ne signifie pas que ce doit être un routeur. Il peut s'agir d'un proxy, d'ALG, etc. De plus, il peut y avoir un cas d'angle où tout trafic destiné à un réseau différent doit être piégé et non transmis par la passerelle, auquel cas il ne s'agit pas d'un routeur car il n'est pas acheminé paquets entre réseaux.
Ron Maupin
Je parierais qu'un système capable de prendre des décisions de transfert basées sur les adresses IP de destination ne doit pas être complet Turing ... donc, non, un routeur n'a pas besoin d'être un ordinateur (la même chose s'applique un niveau ci-dessous pour les ponts et un niveau élevé pour les passerelles, bien que possible à des degrés divers. Néanmoins, chacun de ces systèmes est généralement un périphérique (ou un ensemble de périphériques) qui peut être configuré de manière administrative ou par des applications supplémentaires (telles que des protocoles de routage) - et même pour configuration, ces choses ont tendance à être des ordinateurs (spécialisés)
Hagen von Eitzen
@Barmar Je veux dire si une passerelle doit être un périphérique matériel spécialisé comme un pont ou un routeur, ou si ce peut être juste une information comme un paramètre dans un serveur, qui est un peu modifiable, si vous pensez en termes de langages de programmation .
Semo

Réponses:

29

La route par défaut (alias adresse de passerelle) doit appartenir à quelque chose qui est capable de transférer des paquets vers le reste d'Internet, et qui est disposé à le faire. Il n'est pas nécessaire que ce soit l'adresse IP "principale" de la chose qui la possède (quoi que cela signifie). Il peut s'agir d'une adresse logique qui flotte entre deux ou plusieurs appareils, et dans les configurations à haute disponibilité, c'est souvent le cas.

La seule exigence, pour que le routage fonctionne, est que, quel que soit le périphérique qui possède et annonce l'adresse, ce périphérique peut et va acheminer le trafic.

Chapelier Fou
la source
6
... Ou du moins faire semblant.
Shadur
2
@Shadur Je m'intéresse à la façon dont le routage peut fonctionner si l'itinéraire par défaut ne fait que prétendre, en fait, acheminer le trafic.
MadHatter
1
Le routage lui-même ne fonctionnera pas, mais si tout ce que vous voulez autoriser est la navigation, vous pourriez avoir l'interception de la "passerelle" et exécuter un proxy transparent sur les ports 53, 80 et 443, et garder le système lui-même aussi isolé que possible.
Shadur
7
D'ACCORD. Je ne suis pas en désaccord, mais ce n'est pas un routage. Je maintiens mon affirmation que pour que le routage fonctionne, le routeur doit réellement router, et il semble que vous ne seriez pas en désaccord avec cela.
MadHatter
1
Bon point, mais la "passerelle" telle qu'elle est utilisée dans cette question est la route par défaut, c'est-à-dire le prochain saut de dernier recours. Cela doit être en mesure de vous non seulement à tous les sous - réseaux internes que vous ne disposez pas des itinéraires spécifiques pour, mais pour tout le reste aussi bien .
MadHatter
15

L'adresse IP de la passerelle peut être n'importe quelle adresse IP hôte valide dans le sous-réseau, c'est-à-dire pas l'adresse réseau elle-même ni l'adresse de diffusion. Cette adresse IP n'a pas besoin d'appartenir à un seul ordinateur ou routeur, il peut s'agir d'une adresse IP "flottante" utilisée par plusieurs passerelles. Consultez les articles Wikipedia sur HSRP , VRRP , GLBP ou CARP .

Par exemple, lorsque le sous-réseau est 172.16.23.0/25, alors:

  • l' adresse réseau est 172.16.23.0,
  • l' adresse de diffusion est 172.16.23.127, et
  • la plage d' adresses d' hôte valides va de 172.16.23.1 à 172.16.23.126, inclus.

La passerelle doit être l'une de ces adresses d'hôte valides, par exemple 172.16.23.65. Les paramètres de votre ordinateur seraient alors, par exemple:

  • Adresse IP: 172.16.23.5
  • Masque de sous-réseau: 255.255.255.128
  • Passerelle par défaut: 172.16.23.65

Maintenant, en ajoutant l'un des protocoles de redondance du premier saut, les passerelles réelles (routeurs) peuvent avoir l'adresse IP 172.16.23.1 et 172.16.23.2 mais utiliser l'adresse IP virtuelle de 172.16.23.65 pour se présenter comme la passerelle par défaut vers le sous-réseau .

Tommiie
la source
9

"Entité logique" dans votre utilisation est un tout petit peu déroutant. Mais je vais essayer d'y répondre du mieux que je peux.

D'après mon expérience, une passerelle dans une configuration IP est généralement un périphérique physique. Bien qu'il ne s'agisse pas nécessairement d'un ordinateur au sens traditionnel (il peut également s'agir d'une appliance réseau), il doit s'agir d'un périphérique.

Comme vous le savez peut-être, l'objectif d'une passerelle par défaut est d'agir comme une entité de transfert pour toutes les demandes que a.) L'ordinateur n'a pas déjà dans sa table de routage ou a une entrée demandant au système de transmettre la demande à un IP qui se trouve être la passerelle et / ou b.) Qui sont en dehors du domaine de diffusion. La passerelle par défaut n'est jamais utilisée dans les situations où deux hôtes se trouvent sur le même domaine de diffusion (c'est-à-dire une topologie de réseau créée par un commutateur) car le système peut utiliser l'adresse de diffusion du sous-réseau pour trouver l'adresse MAC d'un système possédant une adresse IP particulière.

En bref, pour répondre à votre question, techniquement, vous pouvez définir votre passerelle par défaut comme n'importe quelle adresse IP sur un réseau connecté. Windows ou la plupart des autres systèmes d'exploitation, d'ailleurs, ne vous arrêteront pas car ils n'effectuent souvent pas de vérification des détails TCP / IP. Si vous le définissez, vous êtes très probablement techniquement assez averti pour comprendre la distinction. Cependant, si c'est l'adresse IP d'un appareil qui ne peut pas transmettre, cela entraînera des erreurs dans les applications qui dépendent du routage (c'est-à-dire un navigateur Web) car l'appareil ne sera pas préparé avec une table de routage ou un service de routage pour transmettre la demande.

Cependant, quelqu'un de bien plus expérimenté que moi devrait pouvoir me corriger facilement si je me trompe.

TL; DR - Un appareil physique, très probablement.

kelvintechie
la source
Vous pouvez avoir plusieurs sous-réseaux IP différents sur le même domaine de diffusion. Dans de tels cas, le trafic entre ces hôtes passera par leurs passerelles par défaut, sauf si des entrées supplémentaires sont ajoutées aux tables de routage des hôtes ou si des redirections ICMP sont utilisées.
Peter Green
@PeterGreen Oui, il y a beaucoup de cas marginaux. Par exemple, supposons que 192.168.0.0/24 et 10.0.0.0/24 se trouvent sur le même LAN Ethernet physique avec la passerelle pour les deux étant le même routeur physique à 192.168.0.1 et 10.0.0.1 respectivement. Si 192.168.0.100 pings 10.0.0.100, le premier aller-retour sera relayé via la passerelle. La passerelle peut également envoyer des redirections ICMP à chaque hôte en leur disant qu'ils sont sur le même LAN. Si tel est le cas, chaque hôte enverra alors des demandes ARP pour obtenir les adresses MAC de son homologue et toute autre communication se fera alors directement entre les homologues (et non via la passerelle).
Alex Hajnal du
Notez qu'avec l'exemple ci-dessus, les hôtes doivent être poussés (via une redirection ICMP) pour diffuser une demande ARP pour l'adresse MAC d'un homologue sur un réseau étranger. En l'absence de redirection, les hôtes ne feront pas de requêtes ARP de réseau étranger.
Alex Hajnal
5

Les entrées de table de routage résolvent un sous-réseau en une passerelle ou une carte réseau.

Une table de routage typique pour un périphérique sur un réseau privé pourrait, si vous omettez les éléments inutiles, ressembler à

0.0.0.0/0 via 192.168.0.1
192.168.0.0/24 dev eth0

La route la plus spécifique l'emporte pour chaque destination, la route de sous-réseau a donc priorité sur la route par défaut pour les adresses du sous-réseau.

L'adresse de la passerelle est, à son tour, résolue via la table de routage, qui détermine l'interface réseau à laquelle elle est attribuée ainsi que l'adressage sur la couche inférieure.

Ainsi, pour un paquet à 1.1.1.1, la destination est recherchée dans la table de routage, renvoyant la route par défaut, qui a une passerelle. La passerelle est à nouveau recherchée, renvoyant l'interface Ethernet.

Ethernet a des adresses MAC, donc une recherche ARP est effectuée pour l'adresse de passerelle, et l'adresse MAC pour la passerelle est utilisée pour le paquet sortant (qui utilise toujours la bonne adresse de destination dans son en-tête IP).

D'autres transports de niveau inférieur fonctionnent différemment, par exemple les liens PPP ont une "adresse homologue", donc leur route de périphérique utilise un masque de réseau de / 32, et ils ignorent la résolution ARP et envoient simplement des paquets en tant que "diffusion" sur le lien PPP.

Certaines piles IP nécessitent la création manuelle de la route des périphériques, ce qui rend cela un peu plus évident:

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
la source