Auteur Sujet: Plusieurs IP sur 1 seul interface  (Lu 45839 fois)

0 Membres et 1 Invité sur ce sujet

corrector

  • Invité
Adresses IPv4 de bouclage local
« Réponse #12 le: 14 mai 2013 à 03:53:30 »
C:\>netstat -an

Connexions actives

  Proto  Adresse locale         Adresse distante       État
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING
...
  TCP    127.0.0.1:2559         0.0.0.0:0              LISTENING
  TCP    127.0.0.1:4370         0.0.0.0:0              LISTENING
  TCP    127.0.0.1:4380         0.0.0.0:0              LISTENING
...
  TCP    192.168.1.2:139        0.0.0.0:0              LISTENING

Si adresse locale = 0.0.0.0, écoute sur toutes les interfaces à la fois.
Si adresse locale = 127.0.0.1, n'écoute que sur l'interface locale
Petite remarque :

127.0.0.1 n'est pas la seule adresse de bouclage local, toute la plage 127/8 est dédiée au bouclage local; donc tu peux utiliser 127.0.0.2, 127.0.0.3 ... pour distinguer des serveurs tournants sur un même port TCP ou UDP.

vivien

  • Administrateur
  • *
  • Messages: 47 183
    • Twitter LaFibre.info
Plusieurs IP sur 1 seul interface
« Réponse #13 le: 14 mai 2013 à 14:06:48 »
Merci pour ces informations détaillées !

krtman

  • Expert
  • Abonné Free adsl
  • *
  • Messages: 141
Plusieurs IP sur 1 seul interface
« Réponse #14 le: 14 mai 2013 à 15:26:39 »
Merci pour la rapidité de la réponse!Et côté "client"? Peut-on choisir laquelle des 2 IP va être choisie par un logiciel client sur le PC qui possède 2 IP? Le logiciel qui va initier une connexion TCP? Si non, comment va se faire le choix?

Certaines applications permettent de configurer l'IP utilisée pour la sortie. Tout dépend comment est programmée l'application (cf exemples plus haut).

Est-ce que par exemple une adresse IP de destination qui est déjà dans un des 2 sous-réseaux (donc joignable directement sans passeer par une passerelle/routeur) sera systématiquement atteinte depuis l'IP du PC qui est sur le même sous-réseau?

Cela dépend de la table de routage de votre machine et de la métrique du subnet directement connecté par rapport a la route par défaut. Ou a toute autre route que vous auriez manuellement ajoutée.

Sachant que de manière relativement exhaustive (fonctionnement d'un routeur) le choix d'une route ce fait (en cas de plusieurs chemins possibles) dans l'ordre, par rapport aux critères suivant : masque, distance administrative, métrique.

Les routeurs peuvent avoir plusieurs adresses sur la même interface. Aprés on peut aussi créer des instances de routage virtuelle (VRF chez Cisco), qui crée une table de routage pour chaque VRF. Cela permet de mutualiser le matériel tout en gardant un cloisonnement des réseaux.

Ce type de concepts existe aussi sous Linux, mais l’intérêt, me semble plus limité. Tout au moins en entreprise ou les serveurs sont plutôt mono rôle. Et ou les RSSI n'aiment pas avoir des équipements avec des pattes dans plusieurs réseaux.
« Modifié: 14 mai 2013 à 16:06:02 par krtman »

Leon

  • Client SFR sur réseau Numericable
  • Modérateur
  • *
  • Messages: 5 991
Plusieurs IP sur 1 seul interface
« Réponse #15 le: 14 mai 2013 à 20:31:16 »
Merci à tous pour vos réponses. Effectivement, ça m'a permi de bidouiller. Je découvre des choses.

Dans mes bidouilles, j'ai aussi constaté qu'une "passerelle" dans une table de routage d'un PC pouvait être en dehors de la plage du (des) sous-réseaux IP, tout en étant sur le même réseau ethernet. Là aussi c'est pratique. Mais par contre, il faut que la "voie retour" soit prévue, et donc que le routeur en face connaisse la route vers le PC en question.

Leon.

vivien

  • Administrateur
  • *
  • Messages: 47 183
    • Twitter LaFibre.info
ifconfig est dépassée
« Réponse #16 le: 17 février 2017 à 15:10:40 »
Les "alias" d'interfaces sont obsolètes sous linux depuis une dizaine d'années!

Voir Documentation/networking/alias.txt :
IP-aliases are an obsolete way to manage multiple IP-addresses/masks
per interface. Newer tools such as iproute2 support multiple
address/prefixes per interface, but aliases are still supported
for backwards compatibility.

J'ai donc testé le fait de mettre plusieurs IP sans mettre d'alias : cela ne fonctionne pas

Je précise que chaque IPv4 est dans un /24 différent avec une gateway différente.
Même chose pour IPv6 où chaque IPv6 est dans un /64 différent.

auto eno1
iface eno1 inet static
        address IPv4-A
        netmask 255.255.255.0
        gateway GWv4-A

iface eno1 inet static
        address IPv4-B
        netmask 255.255.255.0
        gateway GWv4-B

iface eno1 inet6 static
        address IPv6-A
        netmask 64
        gateway GWv6-A

iface eno1 inet6 static
        address IPv6-B
        netmask 64
        gateway GWv6-B


Peut être qu'il n'est possible de mettre plusieurs IPv4 sur la même interface qui si elles sont toutes dans la même plage ?

Si les alias semble toujours d’actualité pour IPv4, elle ne sont plus nécessaire pour IPv6 : Cette configuration fonctionne

auto eno1
iface eno1 inet static
        address IPv4-A
        netmask 255.255.255.0
        gateway GWv4-A

iface eno1 inet6 static
        address IPv6-A
        netmask 64
        gateway GWv6-A

iface eno1 inet6 static
        address IPv6-B
        netmask 64
        gateway GWv6-B

auto eno1:0
iface eno1:0 inet static
        address IPv4-B
        netmask 255.255.255.0
        gateway GWv6-B


Voici ce que cela donne avec un ifconfig : Les 2 IPv6, chacune dans un /64 sont bien dans la même interface sans alias.
$ ifconfig
eno1      Link encap:Ethernet  HWaddr 00:26:b9:8b:b7:05 
          inet adr:IPv4-A  Bcast:  Masque:255.255.255.0
          adr inet6: IPv6-A/64 Scope:Global
          adr inet6: IPv6-B/64 Scope:Global
          adr inet6: fe80::226:b9ff:fe8b:b705/64 Scope:Lien
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Packets reçus:492 erreurs:0 :0 overruns:0 frame:0
          TX packets:141 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000
          Octets reçus:46929 (46.9 KB) Octets transmis:21571 (21.5 KB)

eno1:0    Link encap:Ethernet  HWaddr 00:26:b9:8b:b7:05 
          inet adr:IPv4-B  Bcast:  Masque:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

Hugues

  • AS2027 MilkyWan
  • Modérateur
  • *
  • Messages: 12 446
  • Lyon (69) / St-Bernard (01)
    • Twitter
Plusieurs IP sur 1 seul interface
« Réponse #17 le: 17 février 2017 à 15:13:55 »
J'ai arrêté d'utiliser Ifconfig perso, je fais tout avec ip directement et des post-up dans le interfaces (le petit protip de Jack :) )

vivien

  • Administrateur
  • *
  • Messages: 47 183
    • Twitter LaFibre.info
Plusieurs IP sur 1 seul interface
« Réponse #18 le: 17 février 2017 à 15:27:24 »
J'ai cherché à  faire plus propre et à  mettre
eno1 : IPv4-A et IPv6-A
eno1:0 : IPv4-B et IPv6-B

Cela ne fonctionne pas, je ne récupère pas d'IPv6 sur l'alias en01:0

auto eno1
iface eno1 inet static
        address IPv4-A
        netmask 255.255.255.0
        gateway GWv4-A

iface eno1 inet6 static
        address IPv6-A
        netmask 64
        gateway GWv6-A

auto eno1:0
iface eno1:0 inet static
        address IPv4-B
        netmask 255.255.255.0
        gateway GWv6-B

iface eno1:0 inet6 static
        address IPv6-B
        netmask 64
        gateway GWv6-B



En résumé :
eno1 : IPv4-A et IPv6-A  + eno1:0 : IPv4-B et IPv6-B   => ne fonctionne pas car IPv6 refuse d'être sur un alias
eno1 : IPv4-A IPv4-B et IPv6-A IPv6-B                  => ne fonctionne pas car impossible de mettre deux IPv4 sans créer d'alias
eno1 : IPv4-A IPv4-B et IPv6-A  + eno1:0 : IPv6-B      => OK

kgersen

  • Modérateur
  • Abonné Bbox fibre
  • *
  • Messages: 9 091
  • Paris (75)
Plusieurs IP sur 1 seul interface
« Réponse #19 le: 17 février 2017 à 15:46:02 »
il semble qu'en ipv4 il ne faut qu'un seul gateway par interface non ?

sinon la méthode recommandée est  avec 'ip' et des ifup/ifdown.

corrector

  • Invité
ifconfig est dépassée
« Réponse #20 le: 17 février 2017 à 17:16:05 »
J'ai donc testé le fait de mettre plusieurs IP sans mettre d'alias : cela ne fonctionne pas

Je précise que chaque IPv4 est dans un /24 différent avec une gateway différente.
Même chose pour IPv6 où chaque IPv6 est dans un /64 différent.


iface eno1 inet static
        address IPv4-A
        netmask 255.255.255.0
        gateway GWv4-A
Je ne connais pas cette syntaxe!

Ce n'est pas du linux. Ce de la m...asse rajoutée.

corrector

  • Invité
Plusieurs IP sur 1 seul interface
« Réponse #21 le: 17 février 2017 à 17:19:03 »
il semble qu'en ipv4 il ne faut qu'un seul gateway par interface non ?
Pardon?

Le "gateway" c'est lié à une route, pas une interface.

vivien

  • Administrateur
  • *
  • Messages: 47 183
    • Twitter LaFibre.info
ifconfig est dépassée
« Réponse #22 le: 17 février 2017 à 18:00:38 »
Je ne connais pas cette syntaxe!

Ce n'est pas du linux. Ce de la m...asse rajoutée.

Tu mets quoi dans ton fichier /etc/network/interfaces ?

C'est l'unique syntaxe, non ?

/etc/network/interfaces issu d'un serveur pré-configuré par OVH :
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
        address 37.187.131.220
        netmask 255.255.255.0
        network 37.187.131.0
        broadcast 37.187.131.255
        gateway 37.187.131.254

iface eth0 inet6 static
        address 2001:41d0:000a:41dc::
        netmask 64
        dns-nameservers 2001:41d0:3:163::1
        post-up /sbin/ip -family inet6 route add 2001:41d0:000a:41ff:ff:ff:ff:ff dev eth0
        post-up /sbin/ip -family inet6 route add default via 2001:41d0:000a:41ff:ff:ff:ff:ff
        pre-down /sbin/ip -family inet6 route del default via 2001:41d0:000a:41ff:ff:ff:ff:ff
        pre-down /sbin/ip -family inet6 route del 2001:41d0:000a:41ff:ff:ff:ff:ff dev eth0

Hugues

  • AS2027 MilkyWan
  • Modérateur
  • *
  • Messages: 12 446
  • Lyon (69) / St-Bernard (01)
    • Twitter
Plusieurs IP sur 1 seul interface
« Réponse #23 le: 17 février 2017 à 18:08:55 »
J'ai cherché à  faire plus propre et à  mettre

C'est pas plus propre, c'est une illusion parce que c'est parsé par le service 'networking', en vrai c'est déguelasse de faire des alias.


La vraie bonne solution c'est de mettre les autres IP en post-up et si tu veux plusieurs gateway en fonction, des post-up avec des 'src X.X.X.X', je fais ça pour le management de certaines VMs.