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
$FreeBSD$
Original revision: 1.335
Original revision: 1.351
-->
<chapter id="advanced-networking">
@ -13,8 +13,8 @@
<sect1 id="advanced-networking-synopsis">
<title>Synopsis</title>
<para>Ce chapitre abordera certains nombre de sujets réseau
avancés.</para>
<para>Ce chapitre abordera certains nombre de sujets r&eacute;seau
avanc&eacute;s.</para>
<para>Apr&egrave;s la lecture de ce chapitre, vous
conna&icirc;trez:</para>
@ -1284,7 +1284,7 @@ wi0: flags=8843&lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST&gt; mtu 1500
</sect4>
<sect4>
<title>Clients</title>
<title>Clients 802.11b</title>
<para>Presque toutes les cartes r&eacute;seaux sans fil
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
IBSS (ad-hoc, point &agrave; point, et BSS).</para>
</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>
</sect2>
</sect1>
@ -3386,7 +3520,7 @@ host margaux {
s&eacute;rie dans votre ordinateur.</para>
<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
d&eacute;tail le fonctionnement des
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
<filename>/etc/rc.conf</filename>:</para>
<programlisting>gateway_enable="YES"
firewall_enable="YES"
firewall_type="OPEN"
<programlisting>gateway_enable="YES" <co id="co-natd-gateway-enable">
firewall_enable="YES" <co id="co-natd-firewall-enable">
firewall_type="OPEN" <co id="co-natd-firewall-type">
natd_enable="YES"
natd_interface="<replaceable>fxp0</replaceable>"
natd_flags=""</programlisting>
natd_interface="<replaceable>fxp0</replaceable>" <co id="co-natd-natd-interface">
natd_flags="" <co id="co-natd-natd-flags"></programlisting>
<informaltable frame="none">
<tgroup cols="2">
<tbody>
<row>
<entry>gateway_enable="YES"</entry>
<entry>Configure la machine comme passerelle.
Ex&eacute;cuter
<command>sysctl net.inet.ip.forwarding=1</command>
aurait le m&ecirc;me effet.</entry>
</row>
<row><entry>firewall_enable="YES"</entry>
<entry>Active les r&egrave;gles du coupe-feu se
trouvant dans le fichier
<filename>/etc/rc.firewall</filename> au
d&eacute;marrage.</entry>
</row>
<row><entry>firewall_type="OPEN"</entry>
<entry>Cela sp&eacute;cifie un ensemble de r&egrave;gles
pr&eacute;d&eacute;finies pour le coupe-feu qui autorise
tous les paquets entrant. Consultez le fichier
<filename>/etc/rc.firewall</filename> pour d'autres
ensembles de r&eacute;gles.</entry>
</row>
<row>
<entry>natd_interface="fxp0"</entry>
<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>
<calloutlist>
<callout arearefs="co-natd-gateway-enable">
<para>Configure la machine comme passerelle.
Ex&eacute;cuter <command>sysctl
net.inet.ip.forwarding=1</command> aurait le m&ecirc;me
effet.</para>
<callout arearefs="co-natd-firewall-enable">
<para>Active au d&eacute;marrage les r&egrave;gles du
coupe-feu se trouvant dans le fichier
<filename>/etc/rc.firewall</filename>.</para>
<callout arearefs="co-natd-firewall-type">
<para>Cela sp&eacute;cifie un ensemble de r&egrave;gles
pr&eacute;d&eacute;finies pour le coupe-feu qui autorise
tous les paquets entrant. Consultez le fichier
<filename>/etc/rc.firewall</filename> pour d'autres
ensembles de r&eacute;gles.</para>
<callout arearefs="co-natd-natd-interface">
<para>Indique &agrave; travers quelle interface
transf&eacute;rer les paquets (l'interface
connect&eacute;e &agrave; l'Internet).</para>
<callout arearefs="co-natd-natd-flags">
<para>Toutes options de configuration
suppl&eacute;mentaires pass&eacute;es &agrave;
&man.natd.8; au d&eacute;marrage.</para>
</calloutlist>
<para>Le fait d'avoir les options pr&eacute;c&eacute;dentes
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
parall&egrave;le d'imprimante.</para>
<table>
<table frame="none">
<title>C&acirc;blage d'un c&acirc;ble parall&egrave;le pour
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
connu sous le nom d'<acronym>IPv4</acronym>). Comme les autres
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.
Cette section se concentre sur la configuration et l'utilisation
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>
</note>
<table>
<table frame="none">
<title>Adresses IPv6 r&eacute;serv&eacute;es</title>
<tgroup cols="4">
@ -4657,7 +4778,7 @@ gif0: flags=8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1280
(extr&eacute;mit&eacute;) distante
<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
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>
</sect1info>
<title>ATM sous &os;&nbsp;5.X</title>
<title>ATM (<quote>Asynchronous Transfer Mode</quote>) sous &os;&nbsp;5.X</title>
<sect2>
<title>Configuration IP conventionnelle sur ATM (PVCs)</title>
<para>L'IP conventionnelle sur ATM (&ldquo;Classical IP over
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
connect&eacute; (&ldquo;Switched Virtual
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;
devenir impraticable avec un nombre important de machines.
Notre exemple suppose que nous avons quatre machines sur le
r&eacute;seau, chacune connect&eacute;e au r&eacute;seau ATM
&agrave; l'aide d'une carte r&eacute;seau ATM. La
r&eacute;seau, chacune connect&eacute;e au r&eacute;seau
<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
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>
<informaltable frame="none">
@ -4849,10 +4974,10 @@ gif0: flags=8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1280
identiques. Ensuite nous devons configurer les interfaces
ATM sur chaque machine:</para>
<screen>hostA&prompt.root; ifconfig hatm0 192.168.173.1 up
hostB&prompt.root; ifconfig hatm0 192.168.173.2 up
hostC&prompt.root; ifconfig hatm0 192.168.173.3 up
hostD&prompt.root; ifconfig hatm0 192.168.173.4 up</screen>
<screen>hostA&prompt.root; <userinput>ifconfig hatm0 192.168.173.1 up</userinput>
hostB&prompt.root; <userinput>ifconfig hatm0 192.168.173.2 up</userinput>
hostC&prompt.root; <userinput>ifconfig hatm0 192.168.173.3 up</userinput>
hostD&prompt.root; <userinput>ifconfig hatm0 192.168.173.4 up</userinput></screen>
<para>en supposant que l'interface ATM est
<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
r&eacute;aliser cette configuration).</para>
<screen>hostA&prompt.root; atmconfig natm add 192.168.173.2 hatm0 0 100 llc/snap ubr
hostA&prompt.root; atmconfig natm add 192.168.173.3 hatm0 0 101 llc/snap ubr
hostA&prompt.root; atmconfig natm add 192.168.173.4 hatm0 0 102 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; <userinput>atmconfig natm add 192.168.173.3 hatm0 0 101 llc/snap ubr</userinput>
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; atmconfig natm add 192.168.173.3 hatm0 0 103 llc/snap ubr
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.1 hatm0 0 100 llc/snap ubr</userinput>
hostB&prompt.root; <userinput>atmconfig natm add 192.168.173.3 hatm0 0 103 llc/snap ubr</userinput>
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; atmconfig natm add 192.168.173.2 hatm0 0 103 llc/snap ubr
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.1 hatm0 0 101 llc/snap ubr</userinput>
hostC&prompt.root; <userinput>atmconfig natm add 192.168.173.2 hatm0 0 103 llc/snap ubr</userinput>
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; atmconfig natm add 192.168.173.2 hatm0 0 104 llc/snap ubr
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.1 hatm0 0 102 llc/snap ubr</userinput>
hostD&prompt.root; <userinput>atmconfig natm add 192.168.173.2 hatm0 0 104 llc/snap ubr</userinput>
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
qu'UBR (&ldquo;Unspecified Bit Rate&rdquo;) peuvent