<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><head><title>Explorer votre configuration courante</title><link href="style.css" rel="stylesheet" type="text/css" /><meta content="DocBook XSL Stylesheets V1.73.2" name="generator" /><link rel="start" href="index.html" title="HOWTO du routage avancé et du contrôle de trafic sous Linux" /><link rel="up" href="ch03.html" title="Chapitre 3. Introduction à iproute2" /><link rel="prev" href="ch03s03.html" title="Prérequis" /><link rel="next" href="ch03s05.html" title="ARP" /></head><body><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">Explorer votre configuration courante</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="ch03s03.html">Précédent</a> </td><th align="center" width="60%">Chapitre 3. Introduction à iproute2</th><td align="right" width="20%"> <a accesskey="n" href="ch03s05.html">Suivant</a></td></tr></table><hr /></div><div class="sect1" lang="fr"><div class="titlepage"><div><div><h2 class="title"><a id="lartc.iproute2.explore" />Explorer votre configuration courante</h2></div></div></div><p>Cela peut vous paraître surprenant, mais iproute2 est déjà configuré ! Les commandes courantes <span class="command"><strong>ifconfig</strong></span> et <span class="command"><strong>route</strong></span> utilisent déjà les appels système avancés d'<span class="application">iproute2</span>, mais essentiellement avec les options par défaut (c'est-à-dire ennuyeuses). </p><p>L'outil <span class="command"><strong>ip</strong></span> est central, et nous allons lui demander de nous montrer les interfaces. </p><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N101E0" /><span class="command"><strong>ip</strong></span> nous montre nos liens</h3></div></div></div><pre class="screen">[ahu@home ahu]$ ip link list 1: lo: <LOOPBACK,UP> mtu 3924 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: dummy: <BROADCAST,NOARP> mtu 1500 qdisc noop link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff 3: eth0: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1400 qdisc pfifo_fast qlen 100 link/ether 48:54:e8:2a:47:16 brd ff:ff:ff:ff:ff:ff 4: eth1: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc pfifo_fast qlen 100 link/ether 00:e0:4c:39:24:78 brd ff:ff:ff:ff:ff:ff 3764: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP> mtu 1492 qdisc pfifo_fast qlen 10 link/ppp </pre><p>La sortie peut varier, mais voici ce qui est affiché pour mon routeur <acronym class="acronym">NAT</acronym> (NdT : traduction d'adresse) chez moi. J'expliquerai seulement une partie de la sortie, dans la mesure où tout n'est pas directement pertinent. </p><p>La première interface que nous voyons est l'interface <code class="literal">loopback</code>. Bien que votre ordinateur puisse fonctionner sans, je vous le déconseille. La taille de <acronym class="acronym">MTU</acronym> (unité maximum de transmission) est de 3924 octets, et <code class="literal">loopback</code> n'est pas supposé être mis en file d'attente, ce qui prend tout son sens dans la mesure où cette interface est le fruit de l'imagination de votre noyau. </p><p>Je vais passer sur l'interface <code class="literal">dummy</code> pour l'instant, et il se peut qu'elle ne soit pas présente sur votre ordinateur. Il y a ensuite mes deux interfaces physiques, l'une du côté de mon modem câble, l'autre servant mon segment ethernet à la maison. De plus, nous voyons une interface <code class="literal">ppp0</code>. </p><p>Notons l'absence d'adresses <acronym class="acronym">IP</acronym>. <span class="application">Iproute</span> déconnecte les concepts de « <span class="quote">liens</span> » et « <span class="quote">d'adresses IP</span> ». Avec l'<em class="wordasword">IP aliasing</em>, le concept de l'adresse <acronym class="acronym">IP</acronym> canonique est devenu, de toute façon, sans signification. </p><p><span class="command"><strong>ip</strong></span> nous montre bien, cependant, l'adresse <acronym class="acronym">MAC</acronym>, l'identifiant matériel de nos interfaces ethernet. </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N10223" /><span class="command"><strong>ip</strong></span> nous montre nos adresses IP</h3></div></div></div><pre class="screen">[ahu@home ahu]$ ip address show 1: lo: <LOOPBACK,UP> mtu 3924 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 brd 127.255.255.255 scope host lo 2: dummy: <BROADCAST,NOARP> mtu 1500 qdisc noop link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff 3: eth0: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1400 qdisc pfifo_fast qlen 100 link/ether 48:54:e8:2a:47:16 brd ff:ff:ff:ff:ff:ff inet 10.0.0.1/8 brd 10.255.255.255 scope global eth0 4: eth1: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc pfifo_fast qlen 100 link/ether 00:e0:4c:39:24:78 brd ff:ff:ff:ff:ff:ff 3764: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP> mtu 1492 qdisc pfifo_fast qlen 10 link/ppp inet 212.64.94.251 peer 212.64.94.1/32 scope global ppp0 </pre><p>Cela contient plus d'informations : <span class="command"><strong>ip</strong></span> montre toutes nos adresses, et à quelles cartes elles appartiennent. <code class="literal">inet</code> signifie Internet (IPv4). Il y a beaucoup d'autres familles d'adresses, mais elles ne nous concernent pas pour le moment. </p><p>Examinons l'interface <code class="literal">eth0</code> de plus près. Il est dit qu'elle est reliée à l'adresse internet <code class="literal">10.0.0.1/8</code>. Qu'est-ce que cela signifie ? Le /8 désigne le nombre de bits réservés à l'adresse réseau. Il y a 32 bits, donc il reste 24 bits pour désigner une partie de notre réseau. Les 8 premiers bits de <code class="literal">10.0.0.1</code> correspondent à <code class="literal">10.0.0.0</code>, notre adresse réseau, et notre masque de sous-réseau est <code class="literal">255.0.0.0</code>. </p><p>Les autres bits repèrent des machines directement connectées à cette interface. Donc, <code class="literal">10.250.3.13</code> est directement disponible sur <code class="literal">eth0</code>, comme l'est <code class="literal">10.0.0.1</code> dans notre exemple. </p><p>Avec <code class="literal">ppp0</code>, le même concept existe, bien que les nombres soient différents. Son adresse est <code class="literal">212.64.94.251</code>, sans masque de sous-réseau. Cela signifie que vous avez une liaison point à point et que toutes les adresses, à l'exception de <code class="literal">212.64.94.251</code>, sont distantes. Il y a cependant plus d'informations. En effet, on nous dit que de l'autre côté du lien, il n'y a encore qu'une seule adresse, <code class="literal">212.64.94.1</code>. Le /32 nous précise qu'il n'y a pas de « <span class="quote">bits réseau</span> ». </p><p>Il est absolument vital que vous compreniez ces concepts. Référez-vous à la documentation mentionnée au début de ce HOWTO si vous avez des doutes. </p><p>Vous pouvez aussi noter <code class="literal">qdisc</code>, qui désigne la gestion de la mise en file d'attente (<em class="wordasword">Queueing Discipline</em>). Cela deviendra vital plus tard. </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N1027B" /><span class="command"><strong>ip</strong></span> nous montre nos routes</h3></div></div></div><p>Nous savons maintenant comment trouver les adresses <code class="literal">10.x.y.z</code>, et nous sommes capables d'atteindre <code class="literal">212.64.94.1</code>. Cela n'est cependant pas suffisant, et nous avons besoin d'instructions pour atteindre le monde. L'Internet est disponible via notre connexion <acronym class="acronym">PPP</acronym>, et il se trouve que <code class="literal">212.64.94.1</code> est prêt à propager nos paquets à travers le monde, et à nous renvoyer le résultat. </p><pre class="screen">[ahu@home ahu]$ ip route show 212.64.94.1 dev ppp0 proto kernel scope link src 212.64.94.251 10.0.0.0/8 dev eth0 proto kernel scope link src 10.0.0.1 127.0.0.0/8 dev lo scope link default via 212.64.94.1 dev ppp0 </pre><p>Cela se comprend de soi-même. Les 4 premières lignes donnent explicitement ce qui était sous-entendu par <strong class="userinput"><code>ip address show</code></strong>, la dernière ligne nous indiquant que le reste du monde peut être trouvé via <code class="literal">212.64.94.1</code>, notre passerelle par défaut. Nous pouvons voir que c'est une passerelle à cause du mot « <span class="quote">via</span> », qui nous indique que nous avons besoin d'envoyer les paquets vers <code class="literal">212.64.94.1</code>, et que c'est elle qui se chargera de tout. </p><p>En référence, voici ce que l'ancien utilitaire <span class="command"><strong>route</strong></span> nous propose : </p><pre class="screen">[ahu@home ahu]$ route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 212.64.94.1 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0 10.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 eth0 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 212.64.94.1 0.0.0.0 UG 0 0 0 ppp0 </pre></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="ch03s03.html">Précédent</a> </td><td align="center" width="20%"><a accesskey="u" href="ch03.html">Niveau supérieur</a></td><td align="right" width="40%"> <a accesskey="n" href="ch03s05.html">Suivant</a></td></tr><tr><td valign="top" align="left" width="40%">Prérequis </td><td align="center" width="20%"><a accesskey="h" href="index.html">Sommaire</a></td><td valign="top" align="right" width="40%"> ARP</td></tr></table></div></body></html>