Vous êtes sur la page 1sur 31

.:Rseaux:.

Copyright2008tv<thierry.vaira@laposte.net>

Permissionisgrantedtocopy,distributeand/ormodifythisdocumentunderthetermsoftheGNUFreeDocumentationLicense,Version1.1oranylaterversionpublishedbytheFreeSoftwareFoundation;
withnoInvariantSections,withnoFrontCoverTexts,andwithnoBackCover.
YoucanobtainacopyoftheGNUGeneralPublicLicense:writetotheFreeSoftwareFoundation,Inc.,59TemplePlace,Suite330,Boston,MA021111307USA
Permissionestaccordedecopier,distribueret/oumodifiercedocumentselonlestermesdelaLicencedeDocumentationLibreGNU(GNUFreeDocumentationLicense),version1.1outouteversion
ultrieurepublieparlaFreeSoftwareFoundation;sansSectionsInvariables;sansTextedePremiredeCouverture,etsansTextedeQuatrimedeCouverture.
VouspouvezobtenirunecopiedelaGNUGeneralPublicLicense:crirelaFreeSoftwareFoundation,Inc.,59TemplePlace,Suite330,Boston,MA021111307USA

Table des matires


Lesfichiersdeconfigurations...............................................................................................................................................2
Configurationdelarsolutiondenoms.....................................................................................................................................................2
Correspondancesstatiquesdenomsd'htes..............................................................................................................................................2
BasededonnesadressesEthernetadressesIP.......................................................................................................................................3
Fichierdeconfigurationdelarsolutiondenoms.....................................................................................................................................3
Fichierdedfinitiondesprotocolesinternet.............................................................................................................................................3
Listedesservicesinternet..........................................................................................................................................................................4
Rcapitulatif..............................................................................................................................................................................................5

Lescommandesdebase........................................................................................................................................................6
L'interfaceproc......................................................................................................................................................................8
Ledmarrageduservicerseau............................................................................................................................................9
L'interfaceeth0..........................................................................................................................................................................................9
Leservicenetwork....................................................................................................................................................................................9

Lacommandeifconfig.........................................................................................................................................................12
Latrame802.3(FRAME802.3).........................................................................................................................................13
LatrameEthernet_II...........................................................................................................................................................13
Leroutage............................................................................................................................................................................14
Introduction.............................................................................................................................................................................................14
Routagestatiqueetdynamique................................................................................................................................................................15
Routagedirect..........................................................................................................................................................................................15
Routageindirect......................................................................................................................................................................................15
Adressesphysiquesetrseaux.................................................................................................................................................................16
Algorithmederoutage.............................................................................................................................................................................16
Lescommandesdebase..........................................................................................................................................................................17
Latablederoutage..................................................................................................................................................................................18
ConfigurerunposteLinuxenrouteur.....................................................................................................................................................19
Leservicenetworkpourleroutage.........................................................................................................................................................20
Routagestatique......................................................................................................................................................................................20
Routagedynamique.................................................................................................................................................................................20

Lacommanderoute.............................................................................................................................................................21
Lafragmentation.................................................................................................................................................................22
LepaquetIP.........................................................................................................................................................................23
LeprotocoleICMP(InternetControlMessageProtocol)..................................................................................................24
FormatdupaquetICMP..........................................................................................................................................................................25

LeprotocoleARP(AddressResolutionProtocol).............................................................................................................27

RouteursetrequtesARP........................................................................................................................................................................28
ARPSpoofing(ouARPRedirect)...........................................................................................................................................................28
ProxyARP...............................................................................................................................................................................................28
LeprotocoleRARP(ReverseARP)........................................................................................................................................................28
LesRFCs.................................................................................................................................................................................................28
Exemple...................................................................................................................................................................................................29
LatrameARP(AddressResolutionProtocol).........................................................................................................................................30

Lescommandesetoutilsdebase(Linux/Windows)..........................................................................................................31

Annexes

1/31

2008tv

.:Rseaux:.

Les fichiers de configurations


Configuration de la rsolution de noms
Lefichier/etc/host.confcontientdesinformationsspcifiquespourlaconfigurationdelabibliothquede
rsolutiondenoms.Elledoitcontenirunmotcldeconfigurationparligne,suiviparl'information
approprie.Lesmotsclsreconnussontorder,trim,multi,nospoofetreorder(faireunmanhost.confpour
obtenirplusd'informations):
order:Cemotclindiquedansquelordrelarsolutiondesnomsd'htesdoitavoirlieu.Ildoit
tresuiviparuneouplusieursmthodessparespardesvirgules.Cesmthodessontbind,
hostsetnis.
multi:Lesvaleursvalidessontonetoff.Sicetteoptionestsuron,labibliothqueresolv+
renverratouteslesadressesvalidespourunhteapparaissantdanslefichier/etc/hostsplutt
quedenerenvoyerquelapremire.Pardfautelleestsuroffcarcelapeutcauserdes
dgradationssensiblesdesperformancessurlessitesayantungrosfichierhosts.

$ ls -l /etc/host.conf
-rw-r--r-2 root

root

26 fv 12

2003 /etc/host.conf

$ cat /etc/host.conf
order hosts,bind
multi on

Correspondances statiques de noms d'htes


Lefichier/etc/hostsestunfichierdetextesimplequiassocielesadressesIPaveclesnomsd'htes,unelignepar
adresseIP.Pourchaquehte,uneuniquelignedoittreprsente,aveclesinformationssuivantes:
Adresse_IPNom_officiel[Alias...]
Lesdiverschampsdelalignesontsparsparunnombrequelconqued'espacesoudetabulations.
Lesnomsd'htespeuventcontenirn'importequelcaractrealphanumrique,lesignemoins("")etlespoints
(".").Ilsdoiventcommencerparuncaractrealphabtiqueetseterminerparuncaractrealphanumrique.Les
aliaspermettentdedisposerdenomsdiffrents,d'orthographessimplifies,desurnomspluscourts,oudenoms
d'htegnrique(commelocalhost).Leformatdelatabledesnomsd'htesestdcritdanslaRFC952.
LesystmeBerkeleyInternetNameDomain(BIND)implmenteunserveurdenomsInternet(DNS)pourles
systmesUnix.Ilremplaceoucompltelefichier/etc/hostsoularecherchedesnomsd'htes,etlibreunhte
delancessitdedisposerd'unfichier/etc/hostscompletetjour.

Annexes

2/31

2008tv

.:Rseaux:.

Danslessystmesmodernes,mmesilatabledeshtesatremplaceparDNS,cemcanismeestencore
largementemploypour:
initialiserunemachine:beaucoupdesystmesontunpetitfichiercontenantlenometl'adresse
deshtesimportantsurlerseaulocal.CeciestutilelorsqueleDNSn'estpasenmarche,
notammentlorsdelamiseenroutedessystmes.
NIS:lessitesemployantNISutilisentlatabled'htescommeentrepourlabasededonnes
deshtesNIS.MmesiNISpeuttreemployavecunDNS,laplupartdessitesNIS
conserventencorelatabledesnomsd'htesavecuneentrepourtouteslesmachineslocales,
desfinsdesecours.
noeudisols:lespetitssites,isolsdesrseauximportantsemploientlatabled'hteslaplace
duDNS.Silesinformationslocaleschangentrarement,etsilerseaun'estpasconnect
Internet,leDNSn'offrepasbeaucoupd'intrt.

$ ls -l /etc/hosts
-rw-r--r-1 root

root

38 sep

6 10:58 /etc/hosts

$ cat /etc/hosts
127.0.0.1
localhost
...

Base de donnes adresses Ethernet - adresses IP


Lefichier/etc/etherscontientdesadressesEthernetsur48bitsetleuradresseIPcorrespondante,unelignepar
adressesIP:AdresseEthernetAdresseIP
L'adresseEthernetestcritesouslaformex:x:x:x:x:x,oxestunevaleurhxadecimalecompriseentre0etff
reprsentantunoctetdel'adresse.L'AdresseIPpeuttresoitunnomd'htersoluparDNSouuneadresseen
notationdcimalepointe.
Sicefichierexiste,ilseraluparlescriptdedmarrageduservicerseauafind'initialiserlatableARPdela
machine.

Fichier de configuration de la rsolution de noms


Lefichierdeconfigurationdelarsolutiondenoms/etc/resolv.confcontientdesinformationsquisontlues
parlesroutinesdersolutionlapremirefoisqu'ellessontinvoquesparunprocessus.Lefichierestprvupour
trelisiblepardeshumainsetcontientunelistedemotsclsavecdesvaleurs.
Lesdiffrentesoptionsdeconfigurationsont:
nameserver:adresseInternet(ennotationpointe)duserveurdenomsquiserainterrog.
domain:nomdudomainelocal
search:listederecherchepourlesnomsd'hte
...
$ ls -l /etc/resolv.conf
-rw-r--r-1 root
tv

83 dc

9 08:35 /etc/resolv.conf

$ cat /etc/resolv.conf
domain btsiris.net
nameserver 192.168.52.83

Fichier de dfinition des protocoles internet


/etc/protocolsestunfichierdetexteASCII,dcrivantlesdiffrentsprotocolesinternetDARPAquisont
disponiblesaveclesoussystmeTCP/IP.
CesnumrossetrouventdanslechampprotocoledesenttesIP.
Annexes

3/31

2008tv

.:Rseaux:.

Chaquelignealeformatsuivant:
protocolenumroalias...
oleschampssontsparspardesespacesoudestabulations.
Ladescriptiondeschampsestlasuivante:

protocole:lenomoriginalduprotocole,parexempleip,tcp,ouudp.
numro:lenumroofficielduprotocole,telqu'ilapparatradansl'entteIP.
alias:dessynonymesventuelspourlenomduprotocole.

LesfonctionsdelabibliothqueCgetprotoent,getprotobyname,getprotobynumber,setprotoentetendprotoent
permettentd'accderauxprotocolesdecefichierdepuisunprogramme.
$ ls -l /etc/protocols
-rw-r--r-1 root
$ cat /etc/protocols
ip
0
IP
icmp
1
ICMP
igmp
2
IGMP
ggp
3
GGP
tcp
6
TCP
pup
12
PUP
udp
17
UDP
raw
255
RAW
...

root
#
#
#
#
#
#
#
#

715 Jan

Protocole
Protocole
Protocole
Protocole
Protocole
Protocole
Protocole
Interface

1980 /etc/protocols

internet
internet pour messages de contrle
internet pour multi-cast.
passerelle/passerelle
de contrle de transmission
universel PARC
pour Datagrammes
IP directe.

Liste des services internet


/etc/servicesestunfichierdetexteASCIIfournissantunecorrespondanceentreunnomdcrivantunservice
internetetl'ensemblenumrodeport/protocoleutilis.
Chaqueprogrammerseaudevraitconsultercefichierpourobtenirlenumrodeportetleprotocolesousjacent
auservicequ'ilfournit.
LesfonctionsdelabibliothqueCgetservent,getservbyname,getservbyport,setservent,etendservent(3)
permettentd'interrogercefichierdepuisunprogramme.
LesnumrosdeportssontaffectsparleIANA(InternetAssignedNumbersAuthority),etleurpolitiqueactuelle
consisteassignerlafoislesprotocolesTCPetUDPchaquenumrodeport.Ainsilaplupartdesservices
aurontdeuxentres,mmesiellesn'utilisentqueleprotocoleTCP.
Lesnumrosdeportsendessousde1024nepeuventtreassignsunesocketqueparunprogrammeSuper
User.

Annexes

4/31

2008tv

.:Rseaux:.

Chaquelignedcrivantunserviceestdelaforme:
servicenameport/protocole[alias...]
o:
servicename:estlenomintelligibleduservice.Ladiffrencemajuscule/minusculeest
importante.Souventleprogrammeclientpossdeunnomrappelantceluiduservice.
port:estlenumrodeport(endcimal)utilispourceservice.
protocol:estletypedeprotocoleutilis,ildoits'agird'unnomdclardanslefichier
/etc/protocols.Lesprotocoleslespluscourantssonttcpetudp.
alias:estunelisteventuelled'autresnomsserfrantaummeservice,sparspardes
espacesoudestabulations.Encoreunefois,ladiffrencemajuscule/minusculeestimportante.

$ ls -l /etc/services
-rw-r--r-1 root
root
$ cat /etc/services
...
netstat
15/tcp
qotd
17/tcp
msp
18/tcp
msp
18/udp
chargen
19/tcp
chargen
19/udp
ftp
21/tcp
telnet
23/tcp
...

3432 Feb 16

1996 /etc/services

quote
# message send protocol
# message send protocol
ttytst source
ttytst source

Rcapitulatif
Fichier

Description

/etc/host.conf

Configurationdelarsolutiondenoms

/etc/hosts

Correspondancesstatiquesdenomsd'htes

/etc/ethers

BasededonnesadressesEthernetadressesIP

/etc/resolv.conf

Fichierdeconfigurationdelarsolutiondenoms

/etc/protocols

Fichierdedfinitiondesprotocolesinternet

/etc/services

Listedesservicesinternet

Annexes

5/31

2008tv

.:Rseaux:.

Les commandes de base


Commandes

Description

hostname

afficheoudfinitlenomd'htedusystme

domainname

affichelenomdedomaineNIS/YPdusystme

dnsdomainname

affichelenomdedomainedusystme

nisdomainname

afficheoudfinitlenomdedomaineNIS/YPdusystme

ypdomainname

afficheoudfinitlenomdedomaineNIS/YPdusystme

nodename

afficheoudfinitlenomdedomaineDECnetdusystme

Commandes

Description

finger,pinky

rechercherdesinformationssurunutilisateur

rup,ruptime

affichel'tatdesmachinesdurseaulocal

rusers

affichelesutilisateursconnectssurlesmachinesdurseaulocal

rwho

affichelesutilisateursconnectssurlesmachinesdurseaulocal

affichelesutilisateursconnectsetcequ'ilsfont

lsof

listelesfichiersouverts

Commandes

Description

ifcfg

Configurationfilefornetworkinterfaces

ifconfig

configureuneinterfacerseau

ifdown

dsactiveuneinterfacerseau

ifup

activeuneinterfacerseau

netstat

Affichelesconnexionsrseau,lestablesderoutage,lesstatistiquesdes
interfaces,lesconnexionsmasques,lesmessagesnetlink,etlesmembres
multicast.

nmap

Outild'explorationrseauetanalyseurdescurit

ping,ping6

envoyerdesdatagrammesICMPECHO_REQUESTdeshtessurunrseau

traceroute

printtheroutepacketstaketonetworkhost

tracepath,tracepath6

tracespathtoanetworkhostdiscoveringMTUalongthispath

route

afficheetmanipulelatablederoutageIP

arp

manipulelatableARPdusystme

arping

sendARPREQUESTtoaneighbourhost

ip

TCP/IPinterfaceconfigurationandroutingutility

Autrescommandesconcernantlerseau:
# apropos network
dhclient-script
nameif
netconf

Annexes

(8)
(8)
(8)

- DHCP client network configuration script


- name network interfaces based on MAC addresses
- network client and server configuration

6/31

2008tv

.:Rseaux:.
netreport
rdisc
routed
slattach
socket
usernetctl
zcip

(1)
(8)
(8)
(8)
(n)
(8)
(8)

request notification of network interface changes


network router discovery daemon
network routing daemon
attach a network interface to a serial line
Open a TCP network connection
allow a user to manipulate a network interface if permitted
zero configure network interface

Ilestaussipossibled'ajouterdesoutilsspcifiques,commeparexempleethtoolquipermetd'afficherou
configurerlesparamtresd'unecarteEthernet(packageethtool1.61mdk.rpmpouruneMandrake):
# ethtool -i eth0
driver: ne2k-pci
version: 1.02
firmware-version:
bus-info: 00:09.0
# ethtool eth0
Settings for eth0:
No data available

Annexes

7/31

2008tv

.:Rseaux:.

L'interface proc
/procestunpseudosystmedefichiersquiestutiliscommeinterfaceaveclesstructuresdedonnesdunoyau.
Laplupartdesfichierssontenlectureseule,maisquelquesunspermettentlamodificationdevariablesdunoyau.
Onpeutaussiutiliserlacommandesysctlpourconfigurerlesparamtresdunoyau.
Lerpertoire/proc/netregroupediverspseudofichiersrelatifsauxfonctionnalitsrseau.Chaquefichierfournit
desinformationsconcernantunecoucheparticulire.CesfichierssontenASCIIetsontdonclisiblesgrcela
commandecat,maisleprogrammestandardnetstatfournitunaccsplusproprecesdonnes.
# ls -l /proc/net/
-r--r--r-dr-xr-xr-x
-r--r--r--r--r--r-dr-xr-xr-x
-r--r--r-...
-r--r--r--r--r--r--r--r--r--r--r--r--r--r--r--r--r--r-dr-xr-xr-x
...
-r--r--r--r--r--r--r--r--r--r--r--r--r--r--r--r--r--r--r--r--r--r--r--r--

1
2
1
1
2
1

root
root
root
root
root
root

root
root
root
root
root
root

0
0
0
0
0
0

dc
dc
dc
dc
dc
dc

9
9
9
9
9
9

11:51
11:51
11:51
11:51
11:51
11:51

arp
atm/
dev
dev_mcast
drivers/
igmp

1
1
1
1
1
1
2

root
root
root
root
root
root
root

root
root
root
root
root
root
root

0
0
0
0
0
0
0

dc
dc
dc
dc
dc
dc
dc

9
9
9
9
9
9
9

11:51
11:51
11:51
11:51
11:51
11:51
11:51

netlink
netstat
packet
psched
raw
route
rpc/

1
1
1
1
1
1
1
1

root
root
root
root
root
root
root
root

root
root
root
root
root
root
root
root

0
0
0
0
0
0
0
0

dc
dc
dc
dc
dc
dc
dc
dc

9
9
9
9
9
9
9
9

11:51
11:51
11:51
11:51
11:51
11:51
11:51
11:51

snmp
sockstat
softnet_stat
tcp
tr_rif
udp
unix
wireless

/proc/net/arp:cefichiercontientunaffichageASCIIlisibledestablesARPdunoyauservant
larsolutiond'adresse.Ilindiquelafoislesentresapprisesdynamiquementetcellespr
programmes.Leformatestlesuivant:AdresseIPMatrielAttributAdressematrieuue
MasquePriph.
# cat /proc/net/arp
IP address

HW type

Flags

HW address

Mask

Device

/proc/net/dev:cepseudofichiercontientdesinformationsd'tatsurlespriphriquesrseau.
Onytrouvelesnombresdepaquetsmisetreus,lenombred'erreursetdecollisions,ainsique
d'autresdonnesstatistiques.Cefichierestutilisparleprogrammeifconfig.
# cat /proc/net/dev
Inter-|
face |bytes
lo:
27552
eth0:
0

Receive

packets errs drop fifo frame compressed multicast|bytes


396
0
0
0
0
0
0
27552
0
0
0
0
0
0
0
96629

Transmit

packets errs drop fifo colls carrier compressed


396
0
0
0
0
0
0
0 688
0
0 11696
1376
0

Lesparamtresrseauxdunoyausontdanslerpertoire/proc/sys/net/:
802/

core/

ethernet/

ipv4/

token-ring/

unix/

Modifieruneoptionrseaudunoyau,parexemple:
# echo "1" > /proc/sys/net/ipv4/ip_forward
# sysctl -n -w net.ipv4.ip_forward=1

Annexes

8/31

// OU

2008tv

.:Rseaux:.

Le dmarrage du service rseau


L'interface eth0
Aveclacommandedmesgquiafficheletampondesmessagesdunoyau,onpeutvrifierparexemplelaprsence
del'interfaceeth0:
# dmesg | grep eth0
eth0: RealTek RTL-8029 found at 0xec00, IRQ 16, 00:00:21:CB:7A:54.

Lagestiondelacarterseauestraliseparundrivergnralementcritsousformedemoduleschargeablesque
l'onpeutlisteraveclacommandelsmod:
# lsmod | grep $(ethtool -i eth0 | grep driver | cut -d : -f2)
ne2k-pci
6752
1 (autoclean)
8390
7916
0 (autoclean) [ne2k-pci]

Ledriverdelacarterseauserachargdynamiquementlorsqu'uneactionsurl'interfaceeth0seraralise.Pour
unegestionautomatiqueduchargement,onajouteraunaliasdanslefichiermodules.conf:
# cat /etc/modules.conf | grep $(ethtool -i eth0 | grep driver | cut -d : -f2)
alias eth0 ne2k-pci

Le service network
Lescriptdedmarragercrcupreleniveaudedmarragexdans/etc/inittabetvalancerlesdiffrents
scriptsdurpertoire/etc/rc.d/rcx.d/ (oxestleniveaudedmarragedusystme).
LaprsenceS10network,quiestunlienverslescriptnetwork,indiquequeleservicerseauestlancdansle
niveau3:
# ll /etc/rc.d/rc3.d/
total 0
...
lrwxrwxrwx
1 root
...

root

17 jun 15 22:46 S10network -> ../init.d/network

Lescriptnetworkpermetdegrerleservicerseau:
# /etc/init.d/network
Utilisation : network {start|stop|restart|reload|status}
# /etc/init.d/network status
Priphriques configurs :
lo eth0 ppp0
Priphriques actuellement actifs :
lo eth0

Annexes

9/31

2008tv

.:Rseaux:.

SuruneMandriva,lescriptnetworklitlefichier/etc/sysconfig/networkquicontientdesoptionsde
configuration:
# cat /etc/sysconfig/network
HOSTNAME="thius"
NETWORKING=yes
GATEWAY="192.168.52.42"

Sil'optionNETWORKING estgalenoousil'utilitairedeconfigurationipn'estpasprsent,lescriptnetworksort
immdiatement.
Avecl'optionstart,lescriptnetworkraliselesactionssuivantes:

utiliselacommandesysctlpourconfigurerlesparamtresrseauxdunoyau,enfonctiondesoptions
dfinisdans/etc/sysctl.conf:
#
#
#
#

cat /etc/sysctl.conf
Kernel sysctl configuration file for Mandrake Linux
For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and
sysctl.conf(5) for more details.

# Controls IP packet forwarding


net.ipv4.ip_forward = 0
# Disables IP dynaddr
net.ipv4.ip_dynaddr = 0
# Disable ECN
net.ipv4.tcp_ecn = 0
# Controls source route verification
net.ipv4.conf.default.rp_filter = 1
# Controls the System Request debugging functionality of the kernel
#kernel.sysrq = 0
# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid = 1
net.ipv4.icmp_ignore_bogus_error_responses=0
net.ipv4.conf.all.rp_filter=0
net.ipv4.icmp_echo_ignore_broadcasts=0
net.ipv4.icmp_echo_ignore_all=0
net.ipv4.conf.all.log_martians=0
kernel.sysrq=1

litlefichier/etc/ethersetinitialiselatableARP

activel'interfaceloopback

configurelapartieIPX(si$IPX="yes"ou"true")

activeleFORWARDIPv4(si$FORWARD_IPV4="yes"ou"true")

configurelesrseauxvirtuelsVLAN802.1Q(si$VLAN="yes"ou"true")

Annexes

10/31

2008tv

.:Rseaux:.

activeavecifupl'ensembledesinterfacesdcritesparunfichierdeconfigurationifcfg*prsentdansle
rpertoire/etc/sysconfig/networkscripts:
# ll /etc/sysconfig/network-scripts/
...
-rwxr-xr-x
1 root
root
362 sep 6 10:58 ifcfg-eth0*
lrwxrwxrwx
1 root
root
22 jun 15 22:33 ifcfg-lo -> ../networking/ifcfglo
-rw-r--r-1 root
root
373 jun 15 22:49 ifcfg-ppp0
lrwxrwxrwx
1 root
root
20 jun 15 22:33 ifdown -> ../../../sbin/ifdown*
lrwxrwxrwx
1 root
root
18 jun 15 22:33 ifup -> ../../../sbin/ifup*
...
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="none"
IPADDR="192.168.1.1"
NETMASK="255.255.255.0"
ONBOOT="yes"
...

ONBOOT="yes"indiquequel'interfaceseraactiveaudmarrage

ajoutelesroutesstatiquesdcritesdanslefichier/etc/sysconfig/staticroutes

lancelagestiond'IPversion6(si$NETWORKING_IPV6="yes")

Lacommandechkconfigoffreunmoyensimplepourdfinirlesniveauxpourlesquelsunservicedoittre
dmarrouarrt.Ellepermetdevisualiser,d'ajouterouderetirerunservicepourunouplusieursniveauxde
fonctionnement:
chkconfig
chkconfig
chkconfig
chkconfig

--list [service]
--add service
--del service
[--level niveaux] service <on|off|reset>

Pourleservicerseau:
# chkconfig --list network
network

Annexes

0:Arrt 1:Arrt 2:Marche

3:Marche

11/31

4:Marche

5:Marche

6:Arrt

2008tv

.:Rseaux:.

La commande ifconfig
ifconfigestutilispourconfigureretmaintenirlesinterfacesrseaursidentesdanslenoyau.Ilest
utilislorsdubootpourconfigurerlaplupartd'entreellesetainsirendrelesystmeoprationnel.
Siaucunargumentn'estdonn,ifconfigaffichesimplementl'tatdesinterfacesactuellementdfinies.Si
seulleparamtreinterfaceestdonn,ilafficheseulementl'tatdel'interfacecorrespondante;siseulle
paramtreaestfourni,ilaffichel'tatdetouteslesinterfaces,mmecellesquinesontpasactives.
Autrement,ilconsidrequ'ilfautpositionnerdenouvellesvaleurs:
ifconfig [interface]
ifconfig interface [aftype] options | adresse ...

Quelquesoptions:

interface:lenomdel'interfacerseau.C'estgnralementunnomdepilotesuivid'un
numrod'ordrecommeeth0pourlapremireinterfaceEthernet.

up:cetteoptionactivel'interface.Elleestimplicitementspcifiesiunenouvelle
adresseestaffectel'interface.

down:cetteoptionarrtelefonctionnementdupilotepourcetteinterface.

[]arp:valideouinvalidel'utilisationduprotocoleARPsurcetteinterface.Silesigne
moinsestprsent,l'optionestinvalide.

[]promisc:valideouinvalidelemodepromiscuous,touteslestramesserontreuessur
cetteinterface.

mtuN:ceparamtredfinitleMTU(MaximumTransferUnit)d'uneinterface.

...
Faireunman

Annexes

ifconfig pourobtenirplusd'informationssurlacommandeifconfig .

12/31

2008tv

.:Rseaux:.

La trame 802.3 (FRAME 802.3)


Leblocd'informationoutrameauniveaudelasouscoucheMAC(delacouche2LIAISON)estle
suivant:
Prambule
7octets

Dlimiteur Adresse
detrame
destination
1octet
6octets

Adresse
source
6octets

Longueurdes
donnes
2octets

Donnes
461500
octets

FCS
CRC
4octets

Remarques:
Leprambule,composd'unesuccessionde1etde0,assurelasynchronisationdurcepteur
surlatramemise.
Ledlimiteurdetrame10101011permetdetrouverledbutduchampd'adresses(les2
derniersbitsmissont1).
Onatendanceconsidrerqueleprambulefait8octetsetqu'ilnefaitpaspartiedelatrame:iln'est
pascapturparlesanalyseursrseauxetonn'entientlogiquementpascomptedanslecalculduCRC.

La trame Ethernet_II
Leblocd'informationoutrameestlesuivant:
Prambule
7octets

Dlimiteur Adresse
detrame
destination
1octet
6octets

Adresse
source
6octets

Type

protocoledeniveau
suprieur

2octets

Donnes
(MTU)
461500
octets

FCS
CRC
4octets

Quelquesvaleurduchamptype:
Type
0x0800
0x0806
0x809B
0x8137
0x8191
0x0805

Annexes

Protocole
IP
ARP
AppleTalk
IPX
NetBeui
X25

13/31

2008tv

.:Rseaux:.

Le routage
Introduction
Leroutageconsistedterminerlaroutequ'unpaquetdoitprendrepouratteindreunedestination.
CettetcheestraliseauniveaudelacoucheRESEAUdumodlecouches:danscettecouche,onutiliseun
adressagequipermetdespcifierquelrseauappartientunquipement(hteourouteur).

Lesquipement(htesourouteurs)quisesituentsurdesrseauxdiffrentsdevrontutiliserlesservicesd'un
routeur(gatewaydanslaterminologieIP)pourcommuniquer.
LesfonctionsauniveaudelacoucheRESEAUsont:
Acheminer(hteourouteur):envoyerunpaquetversunedestination(hteourouteur)
Relayer(routeur):acheminerunpaquetd'unrseauversunautrerseau
Question:surquelleinterfacerseauacheminerlepaquet?(unquipementpeutpossderuneouplusieursinterfaces)
Rponse:ilfautchercherunlmentdanslepaquetacheminerpourprendresadcision
Demaniregnrale,ondistinguedeuxapprochespossiblesauniveaudelacoucheRESEAU:
serviceorientconnexion:circuitvirtuelX25(nonaborddanscedocument)
servicesansconnexion:adressedestinationdudatagrammeIP
Donc,chaquequipement(hteourouteur)achemineunpaquetenfonctiondel'adresseIPdestination
uniquement.
Pourdterminerlarouteprendre,lepiloteIPutilisesatablederoutagequiindiquepourchaquedestination
(hte,rseauousousrseau),laroute(interfaceoupasserelle)prendre:routagedeprocheenproche.
Unquipement(hteourouteur)auraplusieurspossibilitspourconstruiresatablederoutage:
manuellement
automatiquementparchangederoutesavecsesvoisinsouparconnaissancedirecte

Annexes

14/31

2008tv

.:Rseaux:.

Routage statique et dynamique


Ondistingue:
routagestatiquesilesroutessontfixesmanuellementparl'administrateurrseau
routagedynamiquesilestablesderoutagessontautomatiquementmisesjourpourtenircompte
d'unemodificationdurseauglobal(pannederouteur,nouvelleroute,...)

Routage direct
Dlivranced'unpaquetunhtequiappartientaumme
rseauphysique
Lacommandeifconfigpermetlaconfigurationdu
routagedirectenassociantuneadresseIPunecarte
rseau.
$ ifconfig eth0 172.16.0.1 netmask 255.255.0.0
$ ifconfig eth1 192.168.1.1 netmask 255.255.255.0
$ netstat -nr
Table de routage IP du noyau
Destination Passerelle Genmask
172.16.0.0 0.0.0.0
255.255.0.0
192.168.1.0 0.0.0.0
255.255.255.0
127.0.0.0
0.0.0.0
255.0.0.0

Indic
U
U
U

Iface
eth0
eth1
lo

Routage indirect
Dlivranced'unpaquetunhtequiappartientunrseau
physiquediffrent
Lacommanderoutepermetlaconfigurationduroutage
indirectenpermettantl'ajoutetlasuppressionderoutevers
unhte,unrseauouuneroutepardfaut.
# route add default gw 172.16.0.2 dev eth0
$ netstat -nr
Table de routage IP du noyau
Destination Passerelle Genmask
172.16.0.0 0.0.0.0
255.255.0.0
192.168.1.0 0.0.0.0
255.255.255.0
127.0.0.0
0.0.0.0
255.0.0.0
0.0.0.0
172.16.0.2 0.0.0.0

Annexes

Indic
U
U
U
UG

Iface
eth0
eth1
lo
eth0

15/31

2008tv

.:Rseaux:.

Remarques
Lestablesderoutagedoiventtreconfiguressurl'ensembledesquipements(htesetrouteurs).
Casdeshtes:
Lestablesderoutagesdespostesselimitentsouventuneroutepardfaut:verslerouteur(gateway,donc
souventpasserelleenfranais)quipermettradesortirdurseauphysique.
Casdesrouteurs:
Lestablesderoutagessontdoncconfiguresprincipalementauniveaudesrouteurs:manuellement(routage
statique)ouautomatiquementacquisespardialogueentrerouteurs(routagedynamique).

Adresses physiques et rseaux

Remarque:larsolutiondesadressesMACestraliseparleprotocoleARP(AddressResolutionProtocol).

Algorithme de routage
Leroutageconsistedterminerlaroutequ'unpaquetdoitprendrepouratteindreunedestinationen
fonctiondel'adresseIPdedestinationetdesroutescontenuesdanslatablederoutage.
L'quipementrecherchelerseaudedestinationpartirdel'adresseIPdedestination.Onrappellequel'adresse
rseaus'obtienteneffectuantunETbinaireentrel'adresseIPetunmasquederseau(netmask).
Ondistingue:
Classfull:bassurlesclassesrseaux
Leprincipeduroutageprsentprcdemmentestconnusouslenomdeclassfull.Enrsum:
interfaceTrouve dlivrer le paquet par routage direct
SI !interfaceTrouve
ALORS
routeTrouve dlivrer par routage indirect
SI !routeTrouve
ALORS
dlivrer la paquet par la passerelle par dfaut
SINON
renvoyer message : "Destination unreacheable"
FSI
FSI

Annexes

16/31

2008tv

.:Rseaux:.

Classless:sansclasse
L'algorithmeavolupourtenircomptedesrseauxdontlatailleestsuprieurelatailledduitedelaclasse
(surrseaux).Ceciconduitl'abandondelanotiondeclasse,seullenetmaskdterminelatailledurseau.On
utiliseaussiletermeCIDR(ClasslessInterDomainRouting).

POUR une adresse IP destination


trouv rechercher dans la table de routage le prfixe le plus long qui correspond
l'adresse destination
SI trouv
ALORS
envoyer le paquet
SINON
renvoyer le message : "Destination unreacheable"
FSI
FPOUR

Exempledelargleduplusgrandprfixe:
Tablederoutage
10.0.0.0/8passparvenus
10.0.0.0/16passparmars
Unpaquetdestin10.0.1.1passeraparmars.
Unpaquetdestin10.3.1.1passeraparvnus.
Routepardfaut:
Laroutepardfautestnote0.0.0.0etcorresponddoncaumasquedelongueurnulle:touteslesadresses
destinationscorrespondront.Suivantlargleduplusgrandprfixeutilisedansleroutage,cettecorrespondance,
tantlapluspetite(0.0.0.0/0),seradoncbientesteetchoisieendernier(doncpardfaut).

Les commandes de base


Commandes

Description

netstat

Affichelesconnexionsrseau,lestablesderoutage,lesstatistiquesdes
interfaces,lesconnexionsmasques,lesmessagesnetlink,etlesmembres
multicast.

ping,ping6

envoyerdesdatagrammesICMPECHO_REQUESTdeshtessurunrseau

traceroute

affichelarouteprisepardespaquetssurlerseauafind'atteindreune
destination

tracepath,tracepath6

tracespathtoanetworkhostdiscoveringMTUalongthispath

route

afficheetmanipulelatablederoutageIP
permetdeparamtrerleroutageindirect

ifconfig

permetlaconfigurationdesinterfacesetduroutagedirect

ip

TCP/IPinterfaceconfigurationandroutingutility

Rappel:Cedocumenttraitedel'aspectrseaudusystmeGNU/Linux.

Annexes

17/31

2008tv

.:Rseaux:.

La table de routage
Lescommandesnetstat

-r

et routeaffichentlatablederoutaged'unhte.

Unetablederoutageindiquepourchaquedestination(hte,rseauousousrseau)laroute(interfaceou
passerelle)qu'ilfautprendre.Lesinformationspourchaqueroutesontdonclessuivantes:

Allervers

Passerpar

ladestination(hteourseau)

laroute

Champs:DestinationetGenmask

Champs:PasserelleetIface

LechampIndic(Flags):
U(Up):larouteestactive
H(Host):larouteconduitunhte
G(Gateway):laroutepasseparunepasserelle(voisine)

Lesinformationscomplmentaires:

lechampMtrique(Metric)indiqueladistance,ennombredepasserelles,pouratteindreladestination
lechampRefspcifielenombrederfrencescetteroute(nonutilisparlenoyauLinux)
lechampUsecomptabiliselenombrederecherchesassociescetteroute
lechampMSSindiquelataillemaximaledessegmentsTCPsurcetteroute
lechampFentre(Window)indiquelatailledelafentresurcetteroute
lechampirrtindiqueleparamtreIRRTd'uneconnexionTCPpourcetteroute

LefichierASCII/proc/net/routedonnelatablederoutagedunoyau,maisleprogrammestandardnetstat
fournitunaccsplusproprecesdonnes.
Latablederoutageestrenseignepar:
lacommanderoute (routageindirect)
lacommandeifconfig (routagedirect)
desfichiersaudmarragedelamachine(routestatique)

Annexes

18/31

2008tv

.:Rseaux:.

Exemple

Ajoutd'unerouteversunposte
# route add 192.168.2.1 gw 192.168.1.254 dev eth0

Ajoutd'unerouteversunrseau
# route add -net 192.168.3.0 gw 192.168.1.253 netmask 255.255.255.0 dev eth0

Ajoutd'uneroutepardfaut
# route add default gw 192.168.1.252 dev eth0

Visualisationdelatablederoutagedel'hte
# netstat -nr
Destination
192.168.2.1
192.168.3.0
192.168.1.0
127.0.0.0
0.0.0.0

Passerelle
192.168.1.254
192.168.1.253
0.0.0.0
0.0.0.0
192.168.1.252

Genmask
255.255.255.255
255.255.255.0
255.255.255.0
255.0.0.0
0.0.0.0

Indic
UGH
UG
U
U
UG

MSS
0
0
0
0
0

Fentre irtt Iface


0
0 eth0
0
0 eth0
0
0 eth0
0
0 lo
0
0 eth0

Configurer un poste Linux en routeur


Pardfaut,unposteLinuxnedlivrequelespaquetsquiproviennentduposteouquiluisontdestins.Lesautres
paquetssontignorsetdonclepostenepeutfairefonctionderouteur.
Pourdevenirrouteur,leposteLinuxdoitrelayer(retransmettre)lespaquetsquineluisontpasdestins.Pour
cela,ilfautmodifierl'optionip_forwarddunoyau:
Activerleroutage:
# echo "1" > /proc/sys/net/ipv4/ip_forward
# sysctl -n -w net.ipv4.ip_forward=1
Dsactiverleroutage:
# echo "0" > /proc/sys/net/ipv4/ip_forward
# sysctl -n -w net.ipv4.ip_forward=0

// OU

// OU

Activerleroutagedemanirepermanente(priseencompteaudmarrageduservicerseau):
FORWARD_IPV4=yes danslefichier/etc/sysconfig/network(voiraussi/etc/sysctl.conf)

Annexes

19/31

2008tv

.:Rseaux:.

Le service network pour le routage


Lescript/etc/init.d/networkpermetdegrerleservicerseau.
Lescriptnetworklitlefichier/etc/sysconfig/networkdontquelquesoptionsconcernentleroutage:
FORWARD_IPV4=
GATEWAY=
GATEWAYDEV=

// yes (pour un routeur) ou no (pour un hte)


// adresse ip de la passerelle IP
// une interface, par exemple eth0 ou ppp0

Lefichier/etc/sysconfig/staticroutesestutilispourajouterlesroutesstatiques.
Lasyntaxedufichier/etc/sysconfig/staticroutesdpendduscriptnetwork(etdoncsouventdeladistribution
utilise,iciuneMandrake/Mandriva)quiraliseletraitementsuivant:
# Add non interface-specific static-routes.
if [ -f /etc/sysconfig/static-routes ]; then
grep "^any" /etc/sysconfig/static-routes | while read ignore args ; do
/sbin/route add -$args
done
fi

Donc,chaquelignedufichier/etc/sysconfig/staticroutesdoitabsolumentcommencerparanyetprciserles
argumentsajouterlacommanderoute add - ,parexemple:any net 192.168.0.0 gw 192.168.1.254
netmask 255.255.255.0 dev eth1

Routage statique
Leroutagestatiqueestralismanuellementparl'administrateurrseau.
Avantages

Inconvnients

Utilisationdefichiersdeconfigurationdoncstabilitdela
configuration

Silerseaucomportedenombreuxrouteurs:
tchefastidieuse
risqued'erreurimportant
Impossibilitpourgrerlesroutesredondantes

Remarques:leroutagestatiqueestutilisdanslesrseauxdepetitetaillepour:
lespostesdetravail(routepardfaut)
unrouteuravecuneroutepardfautversleFournisseurd'AccsInternet(FAIouISP:InternetServiceProvider)

Routage dynamique
Leroutagedynamiqueestassurparlesrouteurseuxmmeens'changeantdesinformationssurleurstablesde
routage(ncessitd'unprotocolederoutage,couche3dumodleOSI).
Avantages
Simplicitdelaconfiguration
Adaptabilitl'volutiondurseau
Optimisation(slectiondesmeilleursroutes)
Eliminationdesbouclesderoutage

Inconvnients
Dpendduprotocolederoutageutilisetdelatailledu
rseau:
consommationdelabandepassante
tempsdeconvergence
scurit

Remarques:quelquesprotocolesderoutagedynamiquecommeRIP(RoutingInformationProtocol),IGRP
(InternetGatewayRoutingProtocol)delasocitCISCO,OSPF(OpenShortestPathFirst),...

Annexes

20/31

2008tv

.:Rseaux:.

La commande route
IlestimportantdesavoirquetoutPC/Linux,fonctionnantsousTCP/IP,possdeunetablederoutage
accessibleparlacommanderoute.
Tablederoutage(statique)dunpostequelconque:
# route
Table de routage IP du noyau
Destination
Passerelle
192.168.1.0
*
127.0.0.0
*

Signification:
Destination
Gateway
Genmask
Flags
Metric
Ref
Use
Iface
Faireunman

Annexes

Genmask
255.255.255.0
255.0.0.0

Indic Metric Ref


U
0
0
U
0
0

Use Iface
0 eth0
0 lo

Adressededestinationdelaroute
Adresseipdelapasserellepouratteindrelaroute,*sinon
Masqueutiliser
Indicateurdtat(UUp,HHostGGateway,DDynamic,MModified)
Cotmtriquedelaroute(0pardfaut)
Nombrederoutesquidpendentdecelleci
Nombredutilisationdanslatablederoutage
Interfaceeth0,ethl,lo...
route pourobtenirplusd'informationssurlacommanderoute .

21/31

2008tv

.:Rseaux:.

La fragmentation
SurtoutemachineoupasserellemettantenoeuvreTCP/IP,uneunitmaximaledetransfertMTU(Maximum
TransferUnit)dfinitlataillemaximaled'undatagrammetransportsurlerseauphysiquecorrespondant.
SionprendcommeexempleunrseauEthernet,onauraunMTUpardfautde1500octets,cequicorrespond
lalongueurmaximaleduchampDATAd'unetrameEthernet(leminimumtantde46octets).Onpeutmodifier
lavaleurduMTUpouruneinterfaceeth0aveclacommandeifconfig.
Cen'estpaslerledelacoucheLiaisondumodleOSI(ouInterfacepourlemodleDoD)deraliserla
fragmentation,maisc'estellequifixelavaleurduMTUpuisqu'elleaenchargeletransportdestramessurle
supportphysique.
LorsquelatailledudatagrammeinitialestplusgrandquelavaleurduMTU,lamachineoulapasserellele
fragmenteenuncertainnombredefragmentstransportsparautantdetramessurlesupportphysique.Le
destinatairefinalreconstitueledatagrammeinitialpartirdel'ensembledesfragmentsreus.Onrappellequeles
datagrammespeuventemprunterdescheminsdiffrentspouratteindreunemachinedestinatrice.
Remarques:
LatailledecesfragmentscorrespondaupluspetitMTUempruntsurlerseau.
Siunseuldesfragmentsestperdu,ledatagrammeinitialestconsidrcommeperdu.
DansundatagrammeIP,leschampspropresalafragmentationsont:

IDentification:entiersur16bitsquiidentifieledatagrammeinitial.

FRAGMENTOFFSET:valeursur13bitsindiquantledplcementdesdonnescontenuesdanslefragment
parrapportaudatagrammeinitial.Cettevaleuresttoujoursunmultiplede8octets,latailledufragmentest
doncaussiunmultiplede8octets.

FLAGS:3bitsdontlebitdepoidsfortn'estpasutilisxDFMF
DF:Don'tFragment
MF:MoreFragments,

MF=1ilyad'autresfragments
MF=0dernierfragment

Chaquefragmentadoncunestructureidentiquecelledudatagrammeinitial,seulleschampsFLAGSet
FRAGMENTOFFSETsontspcifiqueschaquefragment.

Annexes

22/31

2008tv

.:Rseaux:.

Le paquet IP
LeformatuniquedupaquetIP,oudatagrammeIP,estorganisenchampsde32bits:
0

Version

IHL

15

16

TOS

24

31

Totallength

Id.
TTL

23

D M
F F

Protocole

Fragmentoffset
Headerchecksum

AdresseSource
AdresseDestination
Options+padding
DONNEES
Lechamp"Version"(4bits)identifielaversionduprotocoleIP.Elleestfixeactuellement4.
Unchamp"InternetHeaderLength"(4bits)spcifielalongueurdelentteenmotsde32bits.CettelongueurIHLvarie
de515,5tantlalongueurnormalelorsqu'aucuneoptionn'estutilise.
Lechamp"Typedeservice"TOS(8bits)dfinitlaprioritdupaquetetletypederoutagesouhait.Celapermetun
logicielderclamerdiffrentstypesdeperformancepourundatagramme:dlaicourt,hautdbit,hautefiabilitoubas
prix.
Lechamp"TotalLength"(16bits)dfinitlenombred'octetscontenusdanslepaquetycomprisl'entteIP.Puisquece
champestcodsur16bits,lataillemax.d'unpaquetIPestde65535octets(64KO).
Lechamp"Identification"(16bits)contientunevaleurentireutilisepouridentifierlesfragmentsd'undatagramme.Ce
champdoittreuniquepourchaquenouveaudatagramme.
"Flags"(3bits)estutilispourcontrlerlafragmentationdespaquets.Lebitdepoidsfaiblezroindiqueledernier
fragmentd'undatagrammeetestbaptis"MoreFlag"ouMFbit.Lebitdumilieuestappel"DonotFragmentflag"ou
DFbit.Lebitdepoidsfortn'estpasutilis.
"FragmentOffset"(13bits)sertindiquerlapositionqu'occupaitlesdonnesdecefragmentdanslemessageoriginal.
LeTTLou"TimeToLive"(8bits)estl'expressionensecondesdeladuremaximaledesjourdupaquetdansunrseau.
Ilexiste2maniresdefairebaissercettevaleur:lorsdurassemblagedupaquetdansunrouteur,savaleurest
dcrmentechaquesecondeoualorschaquerouteurquitraitecepaquetdcrmenteleTTLd'uneunit(compteurde
routeurs).SileTTLdevientnul,sonpaquetIPn'estplusrelay:c'estsouventl'indicationd'uneerreurdepaquetqui
boucle.Uneutilisationdtournedecechamppermetdetracerlarouteemprunteparunpaquet.Enmettantlechamp
TTL0,lepremierrouteurrencontrrejettelepaquetetsignalesaprsenceenretournantunpaquetICMPd'erreurvers
l'metteur.OnrenvoiealorslepaquetaveclechampTTL1afind'atteindrelerouteursuivantetainsidesuite.Achaque
fois,onrcuprel'adresseIPdurouteur.
Lechamp"Protocole"(8bits)identifielacouchedetransportproprecedatagramme:17pourUDP,6pourTCP,1pour
ICMP,8pourEGP,89pourOSPF,...(voir/etc/protocols)
Le"Headerchecksum"ouchampdecontrledel'entte(16bits)contientle"complmentun"dutotal"encomplment
un"detouslesmotsde16bitsdel'entte.
LesadressesIPsourceetdestinationsontcodessur32bits
Alarubrique"Options",sontstockesdesdemandesspcialespourrequrirunroutageparticulierpourcertainspaquets.
+lechamp"padding"(bourrage)esthabituellementremplide0demanirealignerledbutdesdonnessurunmultiple
de32bits.

Annexes

23/31

2008tv

.:Rseaux:.

Le protocole ICMP (Internet Control Message Protocol)


LeprotocoleICMP(InternetControlMessageProtocolRFC792)utiliselesdatagrammesIPpourtransporter
sesmessages.
Destination

Source

Type (0800)

Data

IP header

IP Data

CRC

ICMP
Type Code

...

LeprotocoleICMPpermetparexemple:
lecontrledeflux:lercepteurdbordparunmetteurtroprapide,envoieunmessageICMPSourceQuench
pourarrtertemporairementlmission
ladtectiondedestinationsinaccessiblesdnonceparunmessageDestinationUnreachable
laredirectionderoutespouravertirunemachinehtedutiliserunautregateway.

ICMPfournitd'intressantesdonnespourlediagnosticd'oprationsdurseau.ICMPutilisedesdatagrammesIP
pourvhiculerdesmessagesallerretourentrenoeudsconcerns.Unmessaged'erreurICMPestgnrparune
machinehteralisantqu'ilyaunproblmedetransmissionetrenvoyl'adressededpartdudatagrammeayant
provoquleproblme.
LeprotocoleICMPestutilisnotammentparlacommandepingqui:

Annexes

emetunpaquetICMP"demanded'cho"(type=8etcode=0)et

reoit,silamachinedistanteestactive(alive),unpaquetICMP"rponsed'cho"(type=0et
code=0).

24/31

2008tv

.:Rseaux:.

Format du paquet ICMP


LepaquetICMP(InternetControlMessageProtocolRFC792),encapsuldansunpqueIP(dontlechamp
protocolevaut1pourICMP),alastructuresuivante:
0

8
type

16
code

2431
checksum

donnescomplmentaires(nidetnseq)
entteinternetetdonnesmisesdanslepaquetICMP
L'entted'unpaquetICMPaunelongueurde8octetsdontleschampssontlessuivants:

Lechamptypesur1octet,dfinisparlesRFC792et1256,dontlesvaleursindiquantletypedemessagesont:
0
Rponsed'cho
3
Destinationinaccessible
4
SourceQuench
5
Redirection
8
Echorequest
9
Annoncederouteur
10
Sollicitationderouteur
11
TTLexpir
12
Problmedeparamtre
13
RequteHorodatage
14
Rponsed'horodatage
15
Demanded'information
16
Rponsed'information
17
Requtedemasqued'adresse
18
Rponsedemasqued'adresse

Lechampcodesur1octetindiquelasouscatgoriedumessage

Lechampsommedecontrle(chechsum)sur2octetspermetdevaliderlesdonnes

Lechampdonnecomplmentairesur4octetsestdivisendeuxchampsde16bitscontenant:
unnumrod'identificationdupaquet(pourdistinguer2pingsimultanment);
unnumrodesquencepourmesurerlestempsalleretretoursurlerseauetlespertes.

LesdonnesdupaquetICMPcontientd'abordl'enttedupaquetIPl'originedumessage(de2060octets)puisdes
donnesquelconques.

Annexes

25/31

2008tv

.:Rseaux:.
08
LesmessagesICMPlespluscourantssontlecoupledetype0et8gnrsparleprogrammedetest"ping".Pingenvoieundatagramme
detype8(echorequest)unnoeuddontilattendenretourunmessagedetype0(echoreply)renvoyantlesdonnesinclusesdansla
requte.
3
Quandle"type"estparexemple3pourdestinationinaccessible,le"code"prcisesic'estlerseau,l'hte,leprotocoleouleportquisont
inaccessibles:
0
1
2
3
4
5
7
11
12
13
14
15

Networkunreachable
Hostunreachable
Protocolunreachable
Portunreachable
Fragmentationneededanddonotfragmentbitset
Sourceroutefailed
DestinationHostunknown
Networkunreachablefortypeofservice
Hostunreachablefortypeofservice
Communicationadministrativelyprohibited
Hostprecedenceviolation
Precedencecutoffineffect

4
UndatagrammeSourceQuenchestidentiqueceluidutypeDestinationUnreachable.Ilsertcontrlerunfluxd'informations.Siun
routeurdtectequesonrseauousonprocesseurnepeutsuivreledbitd'unemachinehtemettrice,ilenvoiecelleciunmessage
ICMPincluantlacausedudpassementdecapacit.
0
2

Redirectdatagramtogotothatnetwork
RedirectdatagramforthatnetworkwiththatTOS

1
3

Redirectdatagramtoreachthathost
RedirectdatagramforthathostwiththatTOS

5
LedatagrammeRoutechangerequestestutilisparlesrouteursquiconnaissentunemeilleureroutepouratteindreunedestination
particulire.
910
LeRouterdiscoveryprotocolpermetunsystmed'treavertidynamiquementdelaprsencedetouslesrouteursdisponibles
immdiatementsurunrseauLAN.Lesmessagesdetype9,routeradvertisement,permettentdesrouteursdes'annoncersurunrseau
intervallesde710minutessuiteunmessagedetype10,routersollicitation,misparunemachinehte.
11
LemessageTimeexceededfordatagramutiliseundatagrammeidentiqueceluidutypeDestinationUnreachable.Unrouteurl'utilise
poursignalerlamachinesourcequelavaleurTTL(TimeToLive)d'uneentteIPatdcrmentejusqu'lavaleurd'expiration0,ce
quirevientdirequelepaquetatcartprobablementcaused'uneboucleinfiniedansleroutage.
12
LemessageICMPParameterProblemindiquequ'unargumentinvalideatutilisdanslechampOptionsd'uneentteIP.
1314
LetypeICMP13pourTimeStampRequestet14pourTimeStampReplysontutilisspourinterrogerl'horloged'unsystmedistantafin
des'ysynchroniserourcolterdesinformationsstatistiques.
1516
LesmessagesInformationRequestestenvoypourobtenirl'adresserseaud'unemachinehtedonne.C'estlamthodeutiliseparle
protocoleSLIP(SerialLineIP)pouralloueruneadresseIPlamachineappelante.
1718
LesmessagesAddressMaskRequestsontutilissparalllementl'adressageensousrseaupourdcouvrirlemasquedesousrseau
d'unemachinehte.

Annexes

26/31

2008tv

.:Rseaux:.

Le protocole ARP (Address Resolution Protocol)


LeprotocoleARPserttraduireuneadresserseauIPenuneadressephysique.
UnpostedsireenvoyerunpaquetIPunposteappartenantaummerseauphysiquequelui.Ildoitconnatre
l'adressephysiquedudestinataire.Or,ilneconnaitquesonadresseIP.
@IP
192.168.1.1

trame

Support de transmission

@MAC @IPSRC @IPDEST


?
192.168.1.1 192.168.1.3

DATA

LeprotocoleARPvaluipermettredetrouverl'adressephysiquedupostedestinataire.Cemcanismeest
transparentpourl'utilisateur.
Unetabledeconversionestgnredynamiquementsurchaquehtedanscequ'onappellel'"ARPcache".
QuandARPreoitunedemandedeconversion,ilconsultesatableetretourneladressephysiquesiellesy
trouvesinonilenvoieunpaquetspcialARPRequestPackettousleshtesdummerseauphysiqueincluant
ladresseIPrechercheretenutilisantl'adressebroadcastMACFFFFFFFFFFFF.
Lamachinepossdantl'adresserseauIPdemanderpondenluirenvoyantdoncsonadressephysiquequiest
alorsplacedanslatableARP.

Siaucunerponsen'estreuedansundlaiimparti,larequteestenvoyenouveau.
Lecontenudel'ARPCacheestgnralementconservjusqu'l'extinctiondelamachinehte.Lorsdudmarrage
delamachine,l'ARPCacheestdoncvide:
# arp -v
Entres: 0

Ignores: 0

# cat /proc/net/arp
IP address
HW type

Annexes

Trouves: 0
Flags

HW address

27/31

Mask

Device

2008tv

.:Rseaux:.

Remarques:

Routeurs et requtes ARP

LesrequtesARPnepassentpaslesrouteurs,quirelaientdesinformationsauniveaudelacouche
rseaumaispasdutraficbroadcastMAC.

ARP Spoofing (ou ARP Redirect)

SiunemachinenonfiableaaccsaurseauphysiqueetmetdefauxmessagesARPpour
corromprelecacheARPd'unemachinecibleetd'endtournertoutletraficversellemmeafind'en
d'couteret/oumodifierlesdonnes(attaqueparARPspoofing).DesgnrateursdepaquetsARP
commearpspoofounemesispermettentcetyped'attaque.Lamachinepirateserendtransparente
enreroutantletraficenayantactivl'IPForwarding
(echo 1 > /proc/sys/net/ipv4/ip_forward).Ilexistedoncuncertainrisquelil'utilisationdu
protocoleARP,mmesurdesrseauxsegmentspardesswitch.

Proxy ARP

LeproxyARPpermetdersoudreleproblmepospardesfirewallinstallssurunmmerseau
dadresse.LesrequtesARP,tantfaitesparbroadcast,serontdoncnormalementbloqueparla
machinefiltrante.L'activationdelafonctionnalitProxyARPpermetdepalierceproblmeen
demandantexplicitementcequelesrequtesetrponsesARParrivantparunecartesoient
propagesversl'autreetviceversa.
SousLinux,onactiveraleProxyARPpourchacunedes2interfacesdelamaniresuivante:
# echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp
# echo 1 > /proc/sys/net/ipv4/conf/eth1/proxy_arp

Le protocole RARP (Reverse ARP)


LeprotocoleRARPpermetd'associeruneadresserseauuneadressephysique.Ceprotocoletaitutilisavant
l'adoptionduprotocoleDHCP.RARPtaitalorsutilissousUnixpardesstationsdiskless(sansdisque)oudes
terminauxpourleurattribueruneadresseIPpartird'unserveur.LeprotocoleInverseARPestsimilaire
RARP.

Les RFCs
RFC

Annexes

Contenu

RFC826

ARP

RFC903

RARP

RFC1122

Prrequisrseau

RFC1433

ARPdirect

RFC1868

ExtensionUnARP

RFC2131

DHCPetDHCPARP

RFC2390

InverseARP

28/31

2008tv

.:Rseaux:.

Exemple
Onvientdedmarrerleposted'adresseIP192.168.1.1etlechacheARPestvide.Onfaitunpingversle
posted'adresseIP192.168.1.3.Oncapturel'changeARPquis'ensuitavectcpdump:
# tcpdump -vv arp
tcpdump: listening on eth0
08:51:26.702516 arp who-has 192.168.1.3 tell 192.168.1.1
08:51:26.702747 arp reply 192.168.1.3 is-at 0:a0:4b:7:43:71

192.168.1.3

192.168.1.1

192.168.1.2

requestarp
:whohas
192.168.1
.3tell192
.168.1.1
t0:a0:4
8.1.3isa
6
.1
2
9
1
rp:reply
responsea

b:7:43:71

Danslemmechange,oncaptureetonvisualiselapremiretrameavecethereal:

Annexes

29/31

2008tv

.:Rseaux:.

La trame ARP (Address Resolution Protocol)


ARPatconupourfonctionneravecn'importequelprotocole,celaimpliquel'utilisationd'unformatdepaquet
souple.Parexemple,le"paquet"ARPestencapsuldansunetrameEthernet_IIavecl'adressedediffusion
gnrale(broadcast)etlenumrodeprotocoledsignantunpaquetARP(0x806).LeschampsspcifiquesARP
sont:
0

8
Typematriel
lg@physique

16
lg@IP

2431
Typeprotocole
Opration

@physiquemetteur
@physiquemetteur.

@IPmetteur

@IPmetteur.

@physiquercepteur
@physiquercepteur.
@IPrcepteur.

Pourrappel:

lesadressephysiquesontunetaillede6octets
lesadressesrseauxIPv4ontunetaillede4octets

QuelquesvaleursduchampTypematriel:
Typematriel
1
6
20

Protocole
Ethernet
IEEE802
ATM

LechampTypeprotocoledsigneleprotocoledontonveutrsoudrelesadresses:toujours0x800pourIP.
Lechamplg@physiqueindiquelalongueurdel'adressephysiquesoit6octetspourEthernet;
Lechamplg@protocoleindiquelalongueurdel'adresserseausoit4octetspourIPv4;
LechampOprationdfinitlasignificationdupaquet,soit:
Opration
1
2
3
4
8
9

Annexes

Message
RequteARP
RponseARP
RequteRARP
RponseRARP
RequteInverseARP
RponseInverseARP

30/31

2008tv

.:Rseaux:.

Les commandes et outils de base (Linux/Windows)


Description

Linux

Windows

Configureruneinterfacerseau

ifconfig

ipconfig

Afficherlesconnexionsrseau,lestablesderoutage,les
statistiquesdesinterfaces,...

netstat

netstat

ping

ping

Afficherlecheminqu'unpaquetIPvaprendrepour
allerd'unemachineAunemachineB

traceroute

tracert

Suivrelecheminqu'unpaquetIPvaprendrepouraller
d'unemachineAunemachineBpourdcouvrirle
MTUutilisersurcechemin

tracepath

EnvoyerdesdatagrammesICMPECHO_REQUEST
deshtessurunrseau

AfficheretmanipulerlatablederoutageIP

route

route

ManipulerlatableARPdusystme

arp

arp

Outild'analyseetdecapturerseau

ethereal/wireshark
tcpdump

ethereal/wireshark
windump

Outild'explorationrseauetanalyseurdescurit

nmap

nmap

FournirunmoyendecommunicationTCPbi
directionneletorientoctet(caractre)

telnet

telnet,putty

LireetcrireenutilisantTCPouUDP

netcat

netcat

nom_commandeh
nom_commandehelp

nom_commande/?

Remarque:
Accsauxoptionsdescommandes
Accsladocumentation

mannom_commande

Description
Configurationrseau

Linux

Windows

/etc/
/proc/net

Basederegistre
(regedit)

Remarque:
/procestunpseudosystmedefichiersquiestutiliscommeinterfaceaveclesstructuresdedonnesdunoyau.
Laplupartdesfichierssontenlectureseule,maisquelquesunspermettentlamodificationdevariablesdunoyau.
Onpeutaussiutiliserlacommandesysctlpourconfigurerlesparamtresdunoyau.
Lerpertoire/proc/netregroupediverspseudofichiersrelatifsauxfonctionnalitsrseau.Chaquefichierfournit
desinformationsconcernantunecoucheparticulire.CesfichierssontenASCIIetsontdonclisiblesgrcela
commandecat,maisleprogrammestandardnetstatfournitunaccsplusproprecesdonnes.

Annexes

31/31

2008tv

Vous aimerez peut-être aussi