Maison  >  Article  >  Opération et maintenance  >  Comment configurer la passerelle NAT sous Linux

Comment configurer la passerelle NAT sous Linux

WBOY
WBOYoriginal
2023-07-07 22:36:051992parcourir

Comment configurer la passerelle NAT sur Linux

Introduction : La configuration de la passerelle NAT (Network Address Translation) sur le système d'exploitation Linux est une tâche très courante. Une passerelle NAT permet à plusieurs hôtes d'accéder à Internet en partageant une seule adresse IP publique. Dans cet article, nous explorerons comment configurer une passerelle NAT sous Linux et joindrons des exemples de code correspondants pour aider les lecteurs à terminer le processus de configuration étape par étape.

La passerelle NAT est une technologie réseau qui permet à plusieurs hôtes situés dans un réseau privé d'avoir accès à Internet via une seule adresse IP publique. Il construit un pont entre les réseaux privés et publics, offrant certaines capacités de sécurité et de traduction d'adresses réseau pour les réseaux internes.

Voici les étapes pour configurer une passerelle NAT sous Linux :

Étape 1 : Vérifiez les paramètres du noyau Linux
Tout d'abord, nous devons nous assurer que les paramètres du noyau Linux sont correctement configurés pour permettre le transfert IP. Le transfert IP fait référence à la capacité de permettre le transfert de données entre deux interfaces réseau. Vous pouvez vérifier les paramètres du noyau via la commande suivante :

$ sysctl net.ipv4.ip_forward

Si le résultat de sortie est "1", cela signifie que la fonction de transfert IP a été activée dans le noyau. Si la sortie est « 0 », vous devez effectuer les étapes suivantes pour activer la fonction de transfert IP :

$ sudo sysctl -w net.ipv4.ip_forward=1

Étape 2 : Configurer l'interface réseau
Ensuite, nous devons configurer l'adresse IP et le masque de sous-réseau pour l'interface réseau. Généralement, une passerelle NAT possède deux interfaces réseau, l'une connectée à un réseau public (tel qu'Internet) et l'autre connectée à un réseau privé (tel qu'un réseau local). En supposant que eth0 soit connecté au réseau public et eth1 au réseau privé, vous pouvez configurer les interfaces réseau à l'aide de la commande suivante :

$ sudo ifconfig eth0 <公共IP地址> netmask <公共子网掩码>
$ sudo ifconfig eth1 <私有IP地址> netmask <私有子网掩码>

Par exemple :

$ sudo ifconfig eth0 192.168.0.100 netmask 255.255.255.0
$ sudo ifconfig eth1 10.0.0.1 netmask 255.255.255.0

Étape 3 : Configurez les règles de traduction des adresses réseau
Ensuite, nous devons configurer les règles de traduction des adresses réseau. Vous pouvez facilement définir des règles de transfert à l'aide de l'outil iptables. Voici quelques commandes iptables couramment utilisées :

  1. Activer le transfert IP :
$ sudo iptables -A FORWARD -o eth0 -i eth1 -s 10.0.0.0/24 -m conntrack --ctstate NEW -j ACCEPT
$ sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
$ sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Les commandes ci-dessus font respectivement ce qui suit :

  • Autoriser l'accès depuis l'adresse IP privée dans l'interface eth1 à l'adresse IP publique dans l'interface eth0
  • Autoriser les connexions établies et associées sont transférées via
  • Activer la traduction d'adresses réseau
  1. Enregistrer les règles iptables :
$ sudo iptables-save > /etc/iptables/rules.v4

Enregistrez la commande ci-dessus dans le fichier /etc/iptables/rules.v4 pour qu'elle soit automatiquement chargée au démarrage.

Étape 4 : Activer les paramètres permanents du transfert IP
Afin de garantir que la configuration prend toujours effet après le redémarrage du système, nous devons également modifier le fichier /sysctl.conf pour activer définitivement la fonction de transfert IP. Modifiez le fichier sysctl.conf à l'aide de la commande suivante :

$ sudo nano /etc/sysctl.conf

Recherchez la ligne suivante :

#net.ipv4.ip_forward=1

Remplacez-la par :

net.ipv4.ip_forward=1

Enregistrez et fermez le fichier. Utilisez ensuite la commande suivante pour que les modifications prennent effet immédiatement :

$ sudo sysctl -p

Maintenant, lorsque le système redémarrera, la fonction de transfert IP sera automatiquement activée.

Conclusion :
Dans cet article, nous avons appris comment configurer la passerelle NAT sous Linux. À l'aide des étapes ci-dessus et de l'exemple de code, nous pouvons facilement créer une passerelle NAT permettant à plusieurs hôtes d'accéder à Internet. Dans les applications réelles, nous pouvons également effectuer des configurations plus avancées selon les besoins, telles que la configuration de la redirection de port ou la restriction du contrôle d'accès, etc. J'espère que cet article aidera les lecteurs à comprendre et à configurer la passerelle NAT.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn