MFen 1.335 --> 1.351

This commit is contained in:
Marc Fonvieille 2004-11-16 20:55:18 +00:00
parent 40156b4972
commit cbfb3f7844
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=22973

View file

@ -3,7 +3,7 @@
The FreeBSD French Documentation Project The FreeBSD French Documentation Project
$FreeBSD$ $FreeBSD$
Original revision: 1.335 Original revision: 1.351
--> -->
<chapter id="advanced-networking"> <chapter id="advanced-networking">
@ -13,8 +13,8 @@
<sect1 id="advanced-networking-synopsis"> <sect1 id="advanced-networking-synopsis">
<title>Synopsis</title> <title>Synopsis</title>
<para>Ce chapitre abordera certains nombre de sujets réseau <para>Ce chapitre abordera certains nombre de sujets r&eacute;seau
avancés.</para> avanc&eacute;s.</para>
<para>Apr&egrave;s la lecture de ce chapitre, vous <para>Apr&egrave;s la lecture de ce chapitre, vous
conna&icirc;trez:</para> conna&icirc;trez:</para>
@ -1284,7 +1284,7 @@ wi0: flags=8843&lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST&gt; mtu 1500
</sect4> </sect4>
<sect4> <sect4>
<title>Clients</title> <title>Clients 802.11b</title>
<para>Presque toutes les cartes r&eacute;seaux sans fil <para>Presque toutes les cartes r&eacute;seaux sans fil
802.11b sont support&eacute;es sous &os;. La plupart des 802.11b sont support&eacute;es sous &os;. La plupart des
@ -1292,6 +1292,140 @@ wi0: flags=8843&lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST&gt; mtu 1500
Hermes, Aironet, et Raylink fonctionneront dans le mode Hermes, Aironet, et Raylink fonctionneront dans le mode
IBSS (ad-hoc, point &agrave; point, et BSS).</para> IBSS (ad-hoc, point &agrave; point, et BSS).</para>
</sect4> </sect4>
<sect4>
<title>Clients 802.11a & 802.11g</title>
<para>Le pilote de p&eacute;riph&eacute;rique &man.ath.4;
supporte les normes 802.11a et 802.11g. Si votre carte
est bas&eacute;e sur un circuit Atheros, vous devriez
&ecirc;tre en mesure d'utiliser ce pilote.</para>
<para>Malheureusement il y a toujours de nombreux fabricants
qui ne fournissent pas &agrave; la communaut&eacute; des
logiciels libres les informations concernant les pilotes
pour leurs cartes consid&eacute;rant de telles
informations comme des secrets industriels. Par
cons&eacute;quent, il ne reste aux d&eacute;veloppeurs de
&os; et d'autres syst&egrave;mes d'exploitation libres que
deux choix: d&eacute;velopper les pilotes en passant par
un long et p&eacute;nible processus de <quote>reverse
engineering</quote> ou utiliser les pilotes binaires
existants disponibles pour la plateforme
&microsoft.windows;. La plupart des d&eacute;veloppeurs,
y compris ceux impliqu&eacute;s dans &os;, ont choisi
cette derni&egrave;re approche.</para>
<para>Gr&acirc;ce aux contributions de Bill Paul (wpaul),
depuis &os;&nbsp;5.3-RELEASE, il existe un support
<quote>natif</quote> pour la sp&eacute;cification
d'interface des pilotes de p&eacute;riph&eacute;rique
r&eacute;seau (Network Driver Interface
Specification&mdash;NDIS). Le NDISulator &os; (connu
&eacute;galement sous le nom de Project Evil) prend un
pilote binaire r&eacute;seau &windows; et lui fait penser
qu'il est en train de tourner sous &windows;. Cette
fonctionnalit&eacute; est relativement nouvelle, mais
semble fonctionner correctement dans la plupart des
tests.</para>
<para>Pour utiliser le NDISulator, vous avez besoin de trois
choses:</para>
<orderedlist>
<listitem>
<para>les sources du noyau;</para>
</listitem>
<listitem>
<para>le pilote binaire &windowsxp;
(extension <filename>.SYS</filename>);</para>
</listitem>
<listitem>
<para>le fichier de configuration du pilote &windowsxp;
(extension <filename>.INF</filename>).</para>
</listitem>
</orderedlist>
<para>Vous aurez besoin de compiler le module d'interface du
mini-pilote &man.ndis.4;. En tant que
<username>root</username>:</para>
<screen>&prompt.root; cd /usr/src/sys/modules/ndis
&prompt.root; make && make install</screen>
<para>Recherchez les fichiers sp&eacute;cifiques &agrave;
votre carte. G&eacute;n&eacute;ralement, ils peuvent
&ecirc;tre trouv&eacute;s sur les CDs livr&eacute;s avec
la carte ou sur le site du fabricant. Dans les exemples
qui suivent nous utiliseront les fichiers
<filename>W32DRIVER.SYS</filename> et
<filename>W32DRIVER.INF</filename>.</para>
<para>L'&eacute;tape suivante est de compiler le pilote
binaire dans un module chargeable du noyau. Pour
effectuer cela, en tant que <username>root</username>,
rendez vous dans le r&eacute;pertoire du module
<filename>if_ndis</filename> et copiez-y les fichiers du
pilote &windows;:</para>
<screen>&prompt.root; <userinput>cd /usr/src/sys/modules/if_ndis</userinput>
&prompt.root; <userinput>cp <replaceable>/path/to/driver/W32DRIVER.SYS</replaceable> ./</userinput>
&prompt.root; <userinput>cp <replaceable>/path/to/driver/W32DRIVER.INF</replaceable> ./</userinput></screen>
<para>Nous utiliserons maintenant l'utilitaire
<command>ndiscvt</command> pour g&eacute;n&eacute;rer le
fichier d'ent&ecirc;te
<filename>ndis_driver_data.h</filename> du pilote pour la
compilation du module:</para>
<screen>&prompt.root; ndiscvt -i <replaceable>W32DRIVER.INF</replaceable> -s <replaceable>W32DRIVER.SYS</replaceable> -o ndis_driver_data.h</screen>
<para>Les options <option>-i</option> et <option>-s</option>
pr&eacute;cisent respectivement le fichier de
configuration et le fichier binaire. Nous utilisons
l'option <option>-o ndis_driver_data.h</option> car le
<filename>Makefile</filename> recherchera ce fichier lors
de la compilation du module.</para>
<note>
<para>Certains pilotes &windows; n&eacute;cessitent des
fichiers suppl&eacute;mentaires pour fonctionner. Vous
pouvez les ajouter avec <command>ndiscvt</command> en
utilisant l'option <option>-f</option>. Consultez la page
de manuel &man.ndiscvt.8; pour plus d'information.</para>
</note>
<para>Nous pouvons enfin compiler et installer le module du
pilote:</para>
<screen>&prompt.root; <userinput>make && make install</userinput></screen>
<para>Pour utiliser le pilote, vous devez charger les
modules appropri&eacute;s:</para>
<screen>&prompt.root; <userinput>kldload ndis</userinput>
&prompt.root; <userinput>kldload if_ndis</userinput></screen>
<para>La premi&egrave;re commande charge le pilote
d'interface NDIS, la seconde charge l'interface
r&eacute;seau. Contr&ocirc;lez la sortie de &man.dmesg.8;
&agrave; la recherche d'une quelconque erreur au
chargement. Si tout s'est bien pass&eacute;, vous devriez
obtenir une sortie ressemblant &agrave; ce qui
suit:</para>
<screen>ndis0: &lt;Wireless-G PCI Adapter&gt; mem 0xf4100000-0xf4101fff irq 3 at device 8.0 on pci1
ndis0: NDIS API version: 5.0
ndis0: Ethernet address: 0a:b1:2c:d3:4e:f5
ndis0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
ndis0: 11g rates: 6Mbps 9Mbps 12Mbps 18Mbps 36Mbps 48Mbps 54Mbps</screen>
<para>A partir de l&agrave;, vous pouvez traiter le
p&eacute;riph&eacute;rique <devicename>ndis0</devicename>
comme n'importe quel p&eacute;riph&eacute;rique sans fil
(e.g. <devicename>wi0</devicename>) et consulter les
premi&egrave;res sections de ce chapitre.</para>
</sect4>
</sect3> </sect3>
</sect2> </sect2>
</sect1> </sect1>
@ -3386,7 +3520,7 @@ host margaux {
s&eacute;rie dans votre ordinateur.</para> s&eacute;rie dans votre ordinateur.</para>
<para>Vous devriez lire le document sur <ulink <para>Vous devriez lire le document sur <ulink
url="../../articles/serial-uart/index.html">les ports url="&url.articles.serial-uart;/index.html">les ports
s&eacute;rie sous &os;</ulink> pour comprendre en s&eacute;rie sous &os;</ulink> pour comprendre en
d&eacute;tail le fonctionnement des d&eacute;tail le fonctionnement des
p&eacute;riph&eacute;riques s&eacute;rie et les p&eacute;riph&eacute;riques s&eacute;rie et les
@ -3689,51 +3823,38 @@ options IPFIREWALL_VERBOSE</programlisting>
<para>Ce qui suit doit figurer dans le fichier <para>Ce qui suit doit figurer dans le fichier
<filename>/etc/rc.conf</filename>:</para> <filename>/etc/rc.conf</filename>:</para>
<programlisting>gateway_enable="YES" <programlisting>gateway_enable="YES" <co id="co-natd-gateway-enable">
firewall_enable="YES" firewall_enable="YES" <co id="co-natd-firewall-enable">
firewall_type="OPEN" firewall_type="OPEN" <co id="co-natd-firewall-type">
natd_enable="YES" natd_enable="YES"
natd_interface="<replaceable>fxp0</replaceable>" natd_interface="<replaceable>fxp0</replaceable>" <co id="co-natd-natd-interface">
natd_flags=""</programlisting> natd_flags="" <co id="co-natd-natd-flags"></programlisting>
<informaltable frame="none"> <calloutlist>
<tgroup cols="2"> <callout arearefs="co-natd-gateway-enable">
<tbody> <para>Configure la machine comme passerelle.
<row> Ex&eacute;cuter <command>sysctl
<entry>gateway_enable="YES"</entry> net.inet.ip.forwarding=1</command> aurait le m&ecirc;me
<entry>Configure la machine comme passerelle. effet.</para>
Ex&eacute;cuter <callout arearefs="co-natd-firewall-enable">
<command>sysctl net.inet.ip.forwarding=1</command> <para>Active au d&eacute;marrage les r&egrave;gles du
aurait le m&ecirc;me effet.</entry> coupe-feu se trouvant dans le fichier
</row> <filename>/etc/rc.firewall</filename>.</para>
<row><entry>firewall_enable="YES"</entry> <callout arearefs="co-natd-firewall-type">
<entry>Active les r&egrave;gles du coupe-feu se <para>Cela sp&eacute;cifie un ensemble de r&egrave;gles
trouvant dans le fichier pr&eacute;d&eacute;finies pour le coupe-feu qui autorise
<filename>/etc/rc.firewall</filename> au tous les paquets entrant. Consultez le fichier
d&eacute;marrage.</entry> <filename>/etc/rc.firewall</filename> pour d'autres
</row> ensembles de r&eacute;gles.</para>
<row><entry>firewall_type="OPEN"</entry> <callout arearefs="co-natd-natd-interface">
<entry>Cela sp&eacute;cifie un ensemble de r&egrave;gles <para>Indique &agrave; travers quelle interface
pr&eacute;d&eacute;finies pour le coupe-feu qui autorise transf&eacute;rer les paquets (l'interface
tous les paquets entrant. Consultez le fichier connect&eacute;e &agrave; l'Internet).</para>
<filename>/etc/rc.firewall</filename> pour d'autres <callout arearefs="co-natd-natd-flags">
ensembles de r&eacute;gles.</entry> <para>Toutes options de configuration
</row> suppl&eacute;mentaires pass&eacute;es &agrave;
<row> &man.natd.8; au d&eacute;marrage.</para>
<entry>natd_interface="fxp0"</entry> </calloutlist>
<entry>Indique &agrave; travers quelle interface
transf&eacute;rer les paquets (l'interface
connect&eacute;e &agrave; l'Internet).</entry>
</row>
<row>
<entry>natd_flags=""</entry>
<entry>Toutes options de configuration
suppl&eacute;mentaires pass&eacute;es &agrave;
&man.natd.8; au d&eacute;marrage.</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Le fait d'avoir les options pr&eacute;c&eacute;dentes <para>Le fait d'avoir les options pr&eacute;c&eacute;dentes
d&eacute;finies dans le fichier d&eacute;finies dans le fichier
@ -3948,7 +4069,7 @@ redirect_port tcp 192.168.0.3:80 80</programlisting>
montre comment en faire un &agrave; partir d'un c&acirc;ble montre comment en faire un &agrave; partir d'un c&acirc;ble
parall&egrave;le d'imprimante.</para> parall&egrave;le d'imprimante.</para>
<table> <table frame="none">
<title>C&acirc;blage d'un c&acirc;ble parall&egrave;le pour <title>C&acirc;blage d'un c&acirc;ble parall&egrave;le pour
r&eacute;seau</title> r&eacute;seau</title>
@ -4205,7 +4326,7 @@ round-trip min/avg/max/stddev = 2.530/2.643/2.774/0.103 ms</screen>
version du tr&egrave;s c&eacute;l&egrave;bre protocole IP (aussi version du tr&egrave;s c&eacute;l&egrave;bre protocole IP (aussi
connu sous le nom d'<acronym>IPv4</acronym>). Comme les autres connu sous le nom d'<acronym>IPv4</acronym>). Comme les autres
syst&egrave;mes BSD, &os; utilise l'impl&eacute;mentation IPv6 syst&egrave;mes BSD, &os; utilise l'impl&eacute;mentation IPv6
<acronym>KAME</acronym>. Votre syst&egrave;me &os; est donc KAME. Votre syst&egrave;me &os; est donc
fourni avec tout ce dont vous aurez besoin pour tester l'IPv6. fourni avec tout ce dont vous aurez besoin pour tester l'IPv6.
Cette section se concentre sur la configuration et l'utilisation Cette section se concentre sur la configuration et l'utilisation
d'IPv6.</para> d'IPv6.</para>
@ -4338,7 +4459,7 @@ round-trip min/avg/max/stddev = 2.530/2.643/2.774/0.103 ms</screen>
par des adresses multicast en IPv6.</para> par des adresses multicast en IPv6.</para>
</note> </note>
<table> <table frame="none">
<title>Adresses IPv6 r&eacute;serv&eacute;es</title> <title>Adresses IPv6 r&eacute;serv&eacute;es</title>
<tgroup cols="4"> <tgroup cols="4">
@ -4657,7 +4778,7 @@ gif0: flags=8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1280
(extr&eacute;mit&eacute;) distante (extr&eacute;mit&eacute;) distante
<replaceable>REMOTE_IPv4_ADDR</replaceable>:</para> <replaceable>REMOTE_IPv4_ADDR</replaceable>:</para>
<programlisting>gif_config_gif0="<replaceable>MY_IPv4_ADDR REMOTE_IPv4_ADDR</replaceable>"</programlisting> <programlisting>gifconfig_gif0="<replaceable>MY_IPv4_ADDR REMOTE_IPv4_ADDR</replaceable>"</programlisting>
<para>Pour utiliser l'adresse IPv6 que l'on vous a <para>Pour utiliser l'adresse IPv6 que l'on vous a
assign&eacute; en vue d'&ecirc;tre utilis&eacute;e pour assign&eacute; en vue d'&ecirc;tre utilis&eacute;e pour
@ -4727,14 +4848,15 @@ gif0: flags=8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1280
</authorgroup> </authorgroup>
</sect1info> </sect1info>
<title>ATM sous &os;&nbsp;5.X</title> <title>ATM (<quote>Asynchronous Transfer Mode</quote>) sous &os;&nbsp;5.X</title>
<sect2> <sect2>
<title>Configuration IP conventionnelle sur ATM (PVCs)</title> <title>Configuration IP conventionnelle sur ATM (PVCs)</title>
<para>L'IP conventionnelle sur ATM (&ldquo;Classical IP over <para>L'IP conventionnelle sur ATM (&ldquo;Classical IP over
ATM&rdquo;&mdash;<acronym>CLIP</acronym>) est la ATM&rdquo;&mdash;<acronym>CLIP</acronym>) est la
m&eacute;thode la plus simple pour utiliser ATM avec l'IP. m&eacute;thode la plus simple pour utiliser ATM
(Asynchronous Transfer Mode) avec l'IP.
Elle peut &ecirc;tre utilis&eacute;e en mode non Elle peut &ecirc;tre utilis&eacute;e en mode non
connect&eacute; (&ldquo;Switched Virtual connect&eacute; (&ldquo;Switched Virtual
Connections&rdquo;&mdash;SVCs) et en mode connect&eacute; Connections&rdquo;&mdash;SVCs) et en mode connect&eacute;
@ -4752,10 +4874,13 @@ gif0: flags=8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1280
que cela soit simple &agrave; configurer, cela tend &agrave; que cela soit simple &agrave; configurer, cela tend &agrave;
devenir impraticable avec un nombre important de machines. devenir impraticable avec un nombre important de machines.
Notre exemple suppose que nous avons quatre machines sur le Notre exemple suppose que nous avons quatre machines sur le
r&eacute;seau, chacune connect&eacute;e au r&eacute;seau ATM r&eacute;seau, chacune connect&eacute;e au r&eacute;seau
&agrave; l'aide d'une carte r&eacute;seau ATM. La <acronym role="Asynchronous Transfer Mode">ATM</acronym>
&agrave; l'aide d'une carte r&eacute;seau <acronym
role="Asynchronous Transfer Mode">ATM</acronym>. La
premi&egrave;re &eacute;tape est d'&eacute;tablir le plan premi&egrave;re &eacute;tape est d'&eacute;tablir le plan
des adresses IP et des connexions ATM entre machines. Nous des adresses IP et des connexions <acronym
role="Asynchronous Transfer Mode">ATM</acronym> entre machines. Nous
utilisons le plan suivant:</para> utilisons le plan suivant:</para>
<informaltable frame="none"> <informaltable frame="none">
@ -4849,10 +4974,10 @@ gif0: flags=8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1280
identiques. Ensuite nous devons configurer les interfaces identiques. Ensuite nous devons configurer les interfaces
ATM sur chaque machine:</para> ATM sur chaque machine:</para>
<screen>hostA&prompt.root; ifconfig hatm0 192.168.173.1 up <screen>hostA&prompt.root; <userinput>ifconfig hatm0 192.168.173.1 up</userinput>
hostB&prompt.root; ifconfig hatm0 192.168.173.2 up hostB&prompt.root; <userinput>ifconfig hatm0 192.168.173.2 up</userinput>
hostC&prompt.root; ifconfig hatm0 192.168.173.3 up hostC&prompt.root; <userinput>ifconfig hatm0 192.168.173.3 up</userinput>
hostD&prompt.root; ifconfig hatm0 192.168.173.4 up</screen> hostD&prompt.root; <userinput>ifconfig hatm0 192.168.173.4 up</userinput></screen>
<para>en supposant que l'interface ATM est <para>en supposant que l'interface ATM est
<devicename>hatm0</devicename> sur toutes les machines. <devicename>hatm0</devicename> sur toutes les machines.
@ -4862,21 +4987,21 @@ hostD&prompt.root; ifconfig hatm0 192.168.173.4 up</screen>
vous devez consulter le manuel du switch sur comment vous devez consulter le manuel du switch sur comment
r&eacute;aliser cette configuration).</para> r&eacute;aliser cette configuration).</para>
<screen>hostA&prompt.root; atmconfig natm add 192.168.173.2 hatm0 0 100 llc/snap ubr <screen>hostA&prompt.root; <userinput>atmconfig natm add 192.168.173.2 hatm0 0 100 llc/snap ubr</userinput>
hostA&prompt.root; atmconfig natm add 192.168.173.3 hatm0 0 101 llc/snap ubr hostA&prompt.root; <userinput>atmconfig natm add 192.168.173.3 hatm0 0 101 llc/snap ubr</userinput>
hostA&prompt.root; atmconfig natm add 192.168.173.4 hatm0 0 102 llc/snap ubr hostA&prompt.root; <userinput>atmconfig natm add 192.168.173.4 hatm0 0 102 llc/snap ubr</userinput>
hostB&prompt.root; atmconfig natm add 192.168.173.1 hatm0 0 100 llc/snap ubr hostB&prompt.root; <userinput>atmconfig natm add 192.168.173.1 hatm0 0 100 llc/snap ubr</userinput>
hostB&prompt.root; atmconfig natm add 192.168.173.3 hatm0 0 103 llc/snap ubr hostB&prompt.root; <userinput>atmconfig natm add 192.168.173.3 hatm0 0 103 llc/snap ubr</userinput>
hostB&prompt.root; atmconfig natm add 192.168.173.4 hatm0 0 104 llc/snap ubr hostB&prompt.root; <userinput>atmconfig natm add 192.168.173.4 hatm0 0 104 llc/snap ubr</userinput>
hostC&prompt.root; atmconfig natm add 192.168.173.1 hatm0 0 101 llc/snap ubr hostC&prompt.root; <userinput>atmconfig natm add 192.168.173.1 hatm0 0 101 llc/snap ubr</userinput>
hostC&prompt.root; atmconfig natm add 192.168.173.2 hatm0 0 103 llc/snap ubr hostC&prompt.root; <userinput>atmconfig natm add 192.168.173.2 hatm0 0 103 llc/snap ubr</userinput>
hostC&prompt.root; atmconfig natm add 192.168.173.4 hatm0 0 105 llc/snap ubr hostC&prompt.root; <userinput>atmconfig natm add 192.168.173.4 hatm0 0 105 llc/snap ubr</userinput>
hostD&prompt.root; atmconfig natm add 192.168.173.1 hatm0 0 102 llc/snap ubr hostD&prompt.root; <userinput>atmconfig natm add 192.168.173.1 hatm0 0 102 llc/snap ubr</userinput>
hostD&prompt.root; atmconfig natm add 192.168.173.2 hatm0 0 104 llc/snap ubr hostD&prompt.root; <userinput>atmconfig natm add 192.168.173.2 hatm0 0 104 llc/snap ubr</userinput>
hostD&prompt.root; atmconfig natm add 192.168.173.3 hatm0 0 105 llc/snap ubr</screen> hostD&prompt.root; <userinput>atmconfig natm add 192.168.173.3 hatm0 0 105 llc/snap ubr</userinput></screen>
<para>Bien &eacute;videmment des contrats de trafic autres <para>Bien &eacute;videmment des contrats de trafic autres
qu'UBR (&ldquo;Unspecified Bit Rate&rdquo;) peuvent qu'UBR (&ldquo;Unspecified Bit Rate&rdquo;) peuvent