Comment puis-je désactiver TCP / IP pour une carte Ethernet?


8

J'ai CentOS 6.3 exécuté sur une machine (virtuelle) avec deux adaptateurs Ethernet. J'ai eth0 connecté à un LAN TCP / IP et eth1 connecté à un modem DSL. Le système est conçu comme un routeur / pare-feu dédié et possède des iptables configurés pour effectuer le SNAT, le DNAT et le filtrage souhaité.

Cela fonctionnait très bien mais j'ai changé de modems DSL et malheureusement le nouveau (plus rapide) est à l'épreuve des idiots et fait automatiquement NAT et ne me permettra pas de transmettre mon IP publique à eth1. Je ne peux pas tolérer le double NAT, j'ai donc fait des recherches et j'ai lu que ce modem peut être «trompé» pour donner à mon ordinateur une IP publique en faisant le PPPoE sur l'ordinateur.

J'ai donc configuré pppd pour utiliser eth1, créant la connexion ppp0 que je substitue ensuite à eth1 dans mon script de configuration iptables personnalisé. Cela semble fonctionner dans une certaine mesure, mais j'ai dû ouvrir le pare-feu pour le faire fonctionner, et c'est feuilleté.

En partie pour aider au dépannage, je veux totalement exclure la possibilité que tout trafic TCP / IP soit directement acheminé vers eth1 où mon modem «convivial» le fera avec plaisir.

À ma connaissance, PPPoE se trouve en dessous, pas au-dessus de IP - sur l'interface physique, il traite directement dans les trames Ethernet. Par conséquent, je ne devrais même pas avoir à configurer le réseau IP sur eth1 pour que pppd fonctionne, et le réseau IP fonctionnant sur eth1 ne fait donc que compliquer les choses inutilement.

Voici où je découvre, idiot, je ne sais pas comment désactiver la pile TCP / IP sous Linux! Je sais que sur une boîte Windows, vous pouvez simplement décocher le protocole TCP / IP dans les propriétés de l'adaptateur, mais ici, je lance un CentOS texte uniquement et je n'ai aucune idée de comment le faire.

Apparemment, ce n'est pas un désir très courant, car j'ai cherché sur Internet en vain. Cela semble être une supposition câblée qu'un adaptateur Ethernet est une connexion TCP / IP. Eh bien, généralement ...

Merci pour toute aide! Kevin

Réponses:


6

Supprimez simplement les adresses IPv4 et IPv6 avec ip addr flush dev eth1et ip -6 addr flush dev eth1.


Merci pour la réponse - cela a fonctionné (et exposé d'autres problèmes dans ma configuration). Cependant, il me semble comme une faille de conception sous Linux qu'il n'y a aucun contrôle explicite des protocoles de couche 3 liés à une interface réseau donnée.
Kevin

Que voulez-vous dire? L'adresse IP est le crochet de l'interface dans la pile IP. Pour dire à la pile IP (parler de TCP dans ce contexte n'a pas de sens), ne lui donnez simplement pas d'adresse IP, c'est aussi simple que cela et la même chose dans tous les systèmes d'exploitation, y compris MS Windows.
Stéphane Chazelas

Du point de vue de l'ingénierie, il y a une différence entre dire au protocole lui - même qu'il n'a pas d'adresse et dire au système d'exploitation que le protocole ne doit pas être lié à la carte réseau donnée. Même effet peut-être mais celui-ci est plus sûr, clair et uniforme. Sous Windows, il existe une liste de contrôle dans les propriétés de l'adaptateur qui détermine quels protocoles sont liés à l'adaptateur; en fait, c'est le seul moyen de dissocier IP, car essayer simplement de supprimer l'adresse IP obtiendra une erreur indiquantThe adapter requires at least one IP address. Please enter one.
Kevin

0

Vous ne pouvez pas désactiver TCP / IP mais vous pouvez désactiver l'interface: exécutez simplement un ip link set eth1 downdans la console.

Ne quittez /etc/sysconfig/network-scripts/ifcfg-eth1qu'avec l' ONBOOT=nointérieur pour rendre le changement persistant.

Vérifiez également Comment désactiver une carte réseau dans CentOS?

PD: Comme gertvdijk noté, cela désactivera également la possibilité d'exécuter à pppdtraverseth1 .


1
La désactivation d'un NIC arrêtera également le passage des trames Layer2, qui sont nécessaires pour PPPoE.
gertvdijk

@gertvdijk à droite, réponse modifiée.
mmoya
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.