Impossible de configurer correctement les adresses IP statiques

0

Normalement, je continuerais d'essayer de résoudre ce problème moi-même, mais je suis vraiment à bout de forces. J'ai un serveur avec deux adaptateurs Ethernet, eth0et eth1. On m'a assigné un /29sous-réseau qui va techniquement de xxx.xxx.xxx.248à xxx.xxx.xxx.255, mais les seules adresses utilisables sont de .250à .254. Pour une raison quelconque .248est réservé, et .249est la passerelle par défaut.

Au début, j'ai essayé ip addr add xxx.xxx.xxx.248/29 dev eth0 broadcast +et ip addr add xxx.xxx.xxx.248/29 dev eth1 broadcast +, en espérant que Linux serait intelligent et s’attribuerait une adresse différente dans le bloc. Cependant, les deux adresses choisies étaient des .248adresses restreintes , ce qui n'est évidemment pas correct.

Puis j'ai fait ip addr add xxx.xxx.xxx.250/29 dev eth0 broadcast +et ip addr add xxx.xxx.xxx.251/29 dev eth1 broadcast +, qui semblait fonctionner, alors je l'ai suivi avec ip route add default via xxx.xxx.xxx.249. Cependant, la commande ping ayant .249abouti à un "hôte de destination inaccessible", j'ai donc clairement commis une erreur. J'ai aussi essayé la même chose en utilisant ifconfiget route, mais on m'a donné les mêmes résultats, donc il y a clairement quelque chose que je ne comprends.

Qu'est-ce que je dois faire?

Andy Shulman
la source
xxx.xxx.xxx.248 est réservé dans un sous-réseau / 29 pour la même raison que xxx.xxx.xxx.0 est réservé dans un sous-réseau / 24 (classe C) - son numéro d’hôte est 0 (ou «tous les 0 ”, Au niveau des bits) et représente donc l’adresse du réseau dans son ensemble et ne peut donc pas être utilisée pour un hôte.
Scott

Réponses:

2

La documentation CRUX contient des exemples de configuration .

EDIT: Définir la diffusion explicitement dans la ipcommande:

ip addr add xxx.xxx.xxx.250/29 dev eth0 broadcast xxx.xxx.xxx.255

Selon la ipdocumentation, il essaie de deviner, mais il vaut probablement mieux éliminer les pièces mobiles.

Ensuite, apportez l'adaptateur avec:

ip link set eth0 up

Essayez de faire un tcpdump (si vous le pouvez) du trafic sortant de votre passerelle:

hôte tcpdump xxx.xxx.xxx.249

Joel E Salas
la source
En fait, je m'en sers beaucoup. Malheureusement, le faire pour les deux eth0et eth1n'a rien arrangé.
Andy Shulman
Essayez la même commande, mais spécifiez le masque de réseau? Je ne peux penser à rien d’autre, si ce n’est qu’elle souhaite utiliser des masques de réseau de classe pour une raison totalement erronée.
Joel E Salas
Je ne sais pas comment ajouter le masque de réseau à ip linket l'aide n'a rien. Souhaitez-vous poster la commande?
Andy Shulman
Définir la diffusion égale au masque de réseau? Vouliez-vous vraiment dire ça?
Andy Shulman
Oops! Résoudre le problème
Joel E Salas
0

Il n'y a pas de problème dans la ip addrcommande.

Le problème est que vous appliquez une adresse IP qui appartient au même sous-réseau sur différentes interfaces. Vérifiez les points suivants:

  1. Les câbles doivent être connectés au même sous-réseau (les deux, car c'est ce que vous semblez vouloir faire).
  2. Vérifiez les tables de routage netstat -rn. Identifiez l'interface qu'il utilise pour communiquer avec elle.

Votre ping ne parvient pas correctement à ARP le MAC et ne peut pas déterminer l'interface à utiliser pour envoyer un ping à la passerelle, probablement en raison d'un problème de routage ou du fait que le câble est déconnecté.

Si les câbles sont correctement connectés, supprimez la route générée automatiquement pour ce sous-réseau.

utilisateur275399
la source