3 votes

arp who-has requests view vlan isolated different addresses (single NIC)

J'ai des hôtes debian qui sont connectés par un port trunk sur 5 vlans différents. Mais ces hôtes répondent aux requêtes arp "who-has" de tous leurs ip différents. J'aimerais comprendre pourquoi ...

Voici le fichier réseau/interfaces (eth0.1 handle 172.16.1.145/16)

auto lo
iface lo inet loopback

allow-hotplug eth0
iface eth0 inet manual

auto eth0.1
iface eth0.1 inet dhcp

auto eth0.10
iface eth0.10 inet static
address 192.168.10.254
netmask 255.255.255.0

auto eth0.6
iface eth0.6 inet static
address 192.168.6.254
netmask 255.255.255.0

auto eth0.7
iface eth0.7 inet static
address 192.168.7.254
netmask 255.255.255.0

auto eth0.2
iface eth0.2 inet static
address 0.0.0.0
netmask 0.0.0.0

Et voici la sortie de différentes requêtes arp who-has sur vlan1 broadcast domain by ldc (172.16.1.50/16)

ldc:~# arping 172.16.1.145
ARPING 172.16.1.145
60 bytes from ab:cd:ef:01:23:45 (172.16.1.145): index=0 time=193.119 usec
^C
--- 172.16.1.145 statistics ---
1 packets transmitted, 1 packets received,   0% unanswered (0 extra)

ldc:~# arping 192.168.10.254
ARPING 192.168.10.254
60 bytes from ab:cd:ef:01:23:45 (192.168.10.254): index=0 time=221.014 usec
^C
--- 192.168.10.254 statistics ---
1 packets transmitted, 1 packets received,   0% unanswered (0 extra)

ldc:~# arping 192.168.6.254
ARPING 192.168.6.254
60 bytes from ab:cd:ef:01:23:45 (192.168.6.254): index=0 time=256.062 usec
^C
--- 192.168.6.254 statistics ---
1 packets transmitted, 1 packets received,   0% unanswered (0 extra)

ldc:~# arping 192.168.7.254
ARPING 192.168.7.254
60 bytes from ab:cd:ef:01:23:45 (192.168.7.254): index=0 time=211.954 usec
^C
--- 192.168.7.254 statistics ---
1 packets transmitted, 1 packets received,   0% unanswered (0 extra)

Il est certain que l3 n'est pas relayé mais je veux quand même régler ce problème... Quelqu'un peut-il m'aider ?

5voto

the-wabbit Points 40039

Par défaut, une installation de Linux est livrée avec un élément appelé modèle de l'"hôte final faible". Il accepte les paquets vers toutes ses adresses sur n'importe quelle interface. Si c'est le protocole ARP qui vous dérange, vous devriez activer le filtrage ARP à l'aide de la commande

net.ipv4.conf.<interface>.arp_filter

accordable. Pour d'autres types de trafic IP, envisagez de mettre en place des règles netfilter appropriées pour le filtrage à l'entrée et/ou d'activer l'option net.ipv4.conf.<interface>.rp_filter (aucune idée si Debian ne fait pas cela par défaut)

Pour en savoir plus : http://linux-ip.net/html/ether-arp.html#ether-arp-flux-arpfilter

1voto

Daniel Storm Points 113

C'est bon, j'ai trouvé la solution :

C'était un problème de arp_ignore : echo 1 > /proc/sys/net/ipv4/conf/eth0.1/arp_ignore (parce que je reçois une requête who-has de vlan1)

IMHO, Cela devrait être le comportement par défaut...

Merci encore.

-2voto

Selivanov Pavel Points 2126

Vous devez écrire vlan-raw-device eth0 dans chaque entrée d'interface vlan. Voir man vlan-interfaces . Si vous nommez les interfaces eth0.1, eth0.2, ... - cela ne fait qu'ajouter des adresses supplémentaires à la même interface physique. Utilisez d'autres noms, par exemple eth0_vlan1, ...

Essaie juste ça :

auto eth0
iface eth0 inet manual

auto vlan6
iface vlan6 inet static
address 192.168.6.254
netmask 255.255.255.0

...

et écrire si cela fonctionne

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X