wA@As峹аѦo

pG IP OPAltp󨫨AaNOyѡz\աIϰpGQOѤlAѾNOѤllI ꥻӬOĤG¦AN]wӰϺѾWӤwCɷ|ΨѾH pGAҤݭnN IP AϹjXPsϬqɡANonzLѾʥ]໼OFC OU@P NAT ¦Aoݧ~ezѤU@QnQתƱI

8.1
@@8.1.1 Ѫͪ
@@8.1.2 @Ӻdjh IPGIP Alias ե\
@@8.1.3 ƸѪD
8.2 Ѿ[]
@@8.2.1 OѾP IP ɾG sysctl.conf
@@8.2.2 ɻݭnѾ
@@8.2.3 RAѤѾ
8.3 ʺAѾ[]Gquagga (zebra + ripd)
8.4 SpGѾɭOP@ IP qGARP Proxy
8.5 I^U
8.6 D
8.7 ѦҸƻP\Ū
8.8 w糧媺ijGhttp://phorum.vbird.org/viewtopic.php?t=26428

8.1

ڭ̦bĤG¦̭ͨLA L̤j\NObڭ̳Wʥ]ǻ觋PVCܩѪ[hiHϥ route oӫOӬd\P]wC nFAѪΦǡHASӦpT{ѬO_TOH


8.1.1 Ѫͪ

pPĤG¦̭ͨ쪺AC@DۤvѪA ]NOAAnzLAۤvѪӶǻADʥ]U@ӸѾWYC YǰeXhAӫʥ]NonzLU@ӸѾѪӶǰeFAɻPAۤvDѪNSYաI ҥHApGWY@Ѿ]w~A...ʥ]yVN|oͫܤjDC ڭ̴NonzL traceroute ӹAѤ@UC router ʥ]yVoC

OKIAۤvDѪ쩳dzOHڭ̥HUoӸѪӻG

[root@www ~]# route -n
Kernel IP routing table
Destination  Gateway        Genmask         Flags Metric Ref  Use Iface
192.168.1.0  0.0.0.0        255.255.255.0   U     0      0      0 eth0 <== 1
169.254.0.0  0.0.0.0        255.255.0.0     U     0      0      0 eth0 <== 2
0.0.0.0      192.168.1.254  0.0.0.0         UG    0      0      0 eth0 <== 3

Aڭ̱oDb Linux tΤUѪOѤpƦCjA ҦpWѪAѬOѡy 192.168.1.0/24 --> 169.254.0.0/16 --> 0.0.0.0/0 (w]) zӱƦCC ӷDʥ]ݭnǰeɡAN|d\WzTӸѳWhAѦpNӫʥ]ǰeXhC A||ıo_ǡA|oXӸѩOHѪDnoXرpӳ]pG

ƹWAb Linux ѳWhOzL֤ߨӹFAҥHoǸѪWhOb֤ߥ\ऺڡI]NObOI ^_^


8.1.2 @Ӻdjh IPG IP Alias եγ~

ڭ̦b Ĥ ifconfig O̭͹L eth0:0 oӸ˸maHoӸ˸miHb쥻 eth0 WX@ӵXӡAHڭ̭쥻d㦳h IP A㦳h IP \NQ٬ IP Alias FCӳo eth0:0 ˸miHzL ifconfig ip oӫOӹFA oӫOγ~½^he`\ŪAo̤AOgTڡI

Aγ\|ݰڡGyo IP Alias ԣγ~ڡHznDIo IP Alias ̤jγ~NOiHAΨӡyzI 򻡩OHڭ̴NӲ@LXӱ`γ~nFG

LAAݭnDOGҦ IP Alias OѹdӪAҥHnҰ eth0:0 ɡAeth0 nQҰʤ~Cӷ eth0 QAҥH eth0:n dNPɤ]QCoonAѤ~A _h``|dҰʪ˸mڡIbѳWh]wA``ݭni@ǴաAo IP Alias NWγFC רOǮճ쪺mҷI

򥻤WADSݨDA_hijAnh IP ɡA̦nbPdWFApGAunϥ IP Alias ɡApb}ɭԴNҰ IP alias OHkܦhաI]ANW ifconfig ҰʪOgJ /etc/rc.d/rc.local ɮפ (ϥ /etc/init.d/network restart ɡA IP alias LkQsҰ)A ӤHijϥΦpU觋ӳBzG

zLo²檺kAANiHb}ɭԱҰʧAӨoh IP bP@idWFCLݭn`NOA pGAoidOzL DHCP HΤʪ觋ӳ]wA IP ѼơA dhcp oȥϥιdAYO eth0 dNAӤʪNH eth0:0 Nӳ]wΡC

bª CentOS 4.x ApGA eth0 Oϥ DHCP Өo IP ѼƪܡAѩ ifup /etc/init.d/network o script {Xg觋AN|ɭP ifcfg-eth0:0 oӳ]wɤ|QϥΨILoӰDb CentOS 5.x wgQJAoI

8.1.3 ƸѪD

ܦhBͥiೣ@ӥiRQkANOGyڥiiHQΨidA QΨӬۦP쪺 IP ӼW[ڳoDyqzHƹWoO@ӥi檺סA LnzL\h]wӹFAYAݨDܡAiHѦҺHjgo@g (1)G

pGuOªH]wnid IP bP@ӺNW[AD⭿yqAiNjSF OHٰOoڭ̦bѪWh̭Lʥ]ǻDnO̾ڥDѪWhaI pGAidɡA]G

AѳWh|OpOHzפW|ܦoˡG
[root@www ~]# route -n
Kernel IP routing table
Destination     Gateway   Genmask         Flags Metric Ref   Use Iface
192.168.0.0     0.0.0.0   255.255.255.0   U     0      0       0 eth1
192.168.0.0     0.0.0.0   255.255.255.0   U     0      0       0 eth0

]NOA(1)nDʵoeʥ] 192.168.0.0/24 ɡAu|zLĤ@Wh A]NOzL eth1 ӶǥXhI (2)b^ʥ]譱AެO eth0 ٬O eth1 iӪʥ]A|zL eth1 Ӧ^Ioi|y@ǰDAרO@Ǩ𪺳Wh譱Aܥi|oͤ@Y~A p@ӡAڥSkFtšA]|W[yqĪGI GOA٥ioͫʥ]ǻ~poIҥHAP@DW]wۦP쪺 IP ɡA onSOdNAѳWhA@ӻAӳ]wP@qP IP bP@DWC ҦpWרҴNO@ӤnܽdڡI

|SOjճo[OHjQ~e (2000) 𫎆IJ Linux ɡAѩɪt׬۷wCA FɺyqOɤ߫ڡӷQ컡ApGdANiHW[yqFܡHON]wFӦP쪺 IP b@DidWAGOHܦhAȳLksqFINO]hLAҥH~jPLHڡI~gDzߪkh ^_^I

8.2 Ѿ[]

ڭ̪Dbϰ̭DiHzLs觋Ӷiʥ]ǰeAbPqDQn۳suɡANonzLѾFC 򤰻OѾHLDn\OHUڭ̴NӲ@I


8.2.1 OѾP IP ɾ

JMDQnNƶǰe줣PɱozLѾAҥHաAѾDn\NOGy໼ʥ]zoI]NOAѾ|Rӷݫʥ] IP YAbYXneFؼ IP AzLѾѪ (routing table) ӱNoӫʥ]VU@ӥؼ (next hop) ǰeCoNOѾ\C Ѿ\iHpFOHثeؤkiHFG

ѾiHsPw]ơAåBiHĶܦhPʥ]榡Aq`...]KyڡI boӳ`̭Aڭ̨èSnQo򰪶NNAȰQbAӺY²檺Ѿ\G sӤPCKKIoӥ\ Linux ӤHqNiHFFIFOH

NpPѪO Linux ֤ߥ\ҴѪAo໼ʥ]O]O Linux ֤ߩҴѡA p[֤߬O_wgҰʫʥ]໼OH²ڡA[֤ߥ\઺ɮקYiApUҥܡG

[root@www ~]# cat /proc/sys/net/ipv4/ip_forward
0  <== 0 NSҰʡA 1 NҰʤF

nɮתeܦҰʭ 1 ²檺ONOϥΡGyecho 1 > /proc/sys/net/ipv4/ip_forwardzYiC LAoӳ]wGbUs}N|ġC]Aijzקtγ]wɪeANO /etc/sysctl.conf ӹF}Ұʫʥ]໼\C

[root@www ~]# vim /etc/sysctl.conf
# NUoӳ]wȭק勵TYiI (ӭȬ 0 ANאּ 1 Yi)
net.ipv4.ip_forward = 1

[root@www ~]# sysctl -p  <==ߨӳ]wͮ

sysctl oӫOOb֤ߤu@ɥΨӪק֤߰Ѽƪ@ӫOAh\iHѦ man sysctl dߡC nháIunoӰʧ@AA Linux N㦳²檺Ѿ\FCӥѩ Linux ѾѪ]wkPAq`ѾWѪ觋NءG

AѤFѾAUӧAiݭnAѨ줰O NAT (Network Address Translation, }Ķ) AA NAT OԣH IP ɾNO²檺 NAT AաIKKAAѤFܡHSA NAT iHF IP ɪ\A NAT NO@ӸѾAuO NAT ѾhF@ӡy IP ഫz\C򻡩OH

ҥHAѾݪOO Public P Private IP ɡA~ݭn NAT \I NAT \ڭ̷|b𳹸`ɽͤΡAoӳ`Ƚͽפ@UѾӤwڡI ^_^


8.2.2 ɻݭnѾ

@ӻAqƶqpƤQp~OLѾAuݭnQ hub/switch 걵UqA MzL@us Internet WYiCLApGOWLƦʳqj~ҡA ѩL̪ҳq`ݭnҼ{pUpA]~ݭnѾ[]G

ѾNuO@ӳ]ơAnpϥκݬݧAҪWIWȬO|X@ήרҡC Uڭ̥N[]@RAѪѾӪ@aI


8.2.3 RAѤѾ

]bQqҷAF@¾u@ιqOs~ѾӳsںA b٦@ӳݭnwWҡA]oWiOo˪pG

RAѤѾ[cܷN
8.2-1BRAѤѾ[cܷN

HWϪ[cӻAoaqDn class C qAOOG

𫟺 192.168.1.0/24 OΨӰ@usںΪAܩ 192.168.10.0/24 hOSΪCPC1 NO@uqA PC2 PC3, PC4 hOSu@ιqA Linux Router hOoӯSΨӳs줽q쪺ѾCbo˪[cUA ӯSʥ]NPqL@骺jFC

ѤWϧA]o{AunO㦳Ѿ\઺] (Router A, Linux Router) |㦳ӥHWA OΨӷqPAPɸӸѾ]|㦳@ӹw]ѰڡI ^_^I t~AA٥iH[W@Ǩ𪺳nb Linux Router WAHO@ PC2~PC4 qOI

ڭ̥ӱQ@UsunFAq PC2 oqͰ_CpG PC2 QnsW Internet ALsup|OpH

[@Uⳡ Router ]wAnFWz\Ah Router A nӤA@ӬO~ Public IP @ӫhO鷺 Private IP A] IP OPA] Router A ٻݭnB~W[ NAT oӾ~AoӾڭ̦b򳹸`|~ͨC ~ARouter A äݭnB~]wCܩ Linux Router N²FIƳΧ@ANӺd]w IP A åBҰʮ֤ߪʥ]໼\AߨN[]FID`²Iڭ̴Nӽͤ@ͳoXӾ]waI



boDݭnidAbo̱NLwqG

# 1. Bz eth0 
[root@www ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.254   <==̭n]wڡIzLoDsXhI
ONBOOT=yes

# 2. ABz eth1 
[root@www ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.10.254
NETMASK=255.255.255.0

# 3. Ұ IP ໼
[root@www ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
# Wz]wȡANw] 0 אּWz 1 YiIxs}hI
[root@www ~]# sysctl -p
[root@www ~]# cat /proc/sys/net/ipv4/ip_forward
1   <==oNOIInO 1 ~iHI

# 4. sҰʺAåB[ѻP ping Router A
[root@www ~]# /etc/init.d/network restart
[root@www ~]# route -n
Kernel IP routing table
Destination     Gateway        Genmask        Flags Metric Ref  Use Iface
192.168.1.0     0.0.0.0        255.255.255.0  U     0      0      0 eth0
192.168.10.0    0.0.0.0        255.255.255.0  U     0      0      0 eth1
169.254.0.0     0.0.0.0        255.255.0.0    U     0      0      0 eth1
0.0.0.0         192.168.1.254  0.0.0.0        UG    0      0      0 eth0
# WIb̫᭱ӸѾ]wO_TI

[root@www ~]# ping -c 2 192.168.1.254
PING 192.168.1.254 (192.168.1.254) 56(84) bytes of data.
64 bytes from 192.168.1.254: icmp_seq=1 ttl=64 time=0.294 ms
64 bytes from 192.168.1.254: icmp_seq=2 ttl=64 time=0.119 ms <==^Yi

²aIӥBzL̫᪺ ping ڭ̤]D Linux Router iHsW Router A oIo˧A Linux Router N OK FoIUӫhOn]w PC2 oӳQO@DoC



קA PC2 O@ا@~tΡAAҳӬOo˪G

H Linux @~tάҡAåB PC2 Ȧ eth0 @idɡAL]wOo˪G

[root@www ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.10.20
NETMASK=255.255.255.0
GATEWAY=192.168.10.254   <==oӳ]w̭nաI
ONBOOT=yes

[root@www ~]# /etc/init.d/network restart
[root@www ~]# route -n
Kernel IP routing table
Destination   Gateway         Genmask         Flags Metric Ref  Use Iface
192.168.10.0  0.0.0.0         255.255.255.0   U     0      0      0 eth0
169.254.0.0   0.0.0.0         255.255.0.0     U     0      0      0 eth0
0.0.0.0       192.168.10.254  0.0.0.0         UG    0      0      0 eth0

[root@www ~]# ping -c 2 192.168.1.254

̫@Ӱʧ@DI|s ping Sk ping Router A IP OHpGs ping Sk^ܡA ܧڭ̪suODIAq𫍧^suݨDy{Ӭݤ@UaI

o{FܡHOVAɫʥ]XhAOD`iAʥ]^ӡ㨺OHuni Router A ѳWhI 192.168.10.0/24 ɡAnNӫʥ] 192.168.1.100 NOFIҥHAno˶iC



]ڪ Router A ~d eth1 AӤ 192.168.1.254 hO]wb eth0 WYC b Router A W[@ѳWhOH²ڡIϥ route add hW[YiIpUҥܪpG

[root@www ~]# route add -net 192.168.10.0 netmask 255.255.255.0 \
>  gw 192.168.1.100

LoӳWhä|gJ]wɡA]Us}oӳWhNFIҥHAAӭnإߤ@Ӹѳ]wɡC ѩoӸѬO̪b eth0 dWAҥH]wɪɦWӭnO route-eth0 Ioӳ]wɪeAڭ̭n]w 192.168.10.0/24 oӺ쪺 gateway O 192.168.1.100 ABOzL eth0 AgkN|ܦG

[root@www ~]# vim /etc/sysconfig/network-scripts/route-eth0
192.168.10.0/24 via 192.168.1.100 dev eth0
ؼк            zLgateway     ˸m

[root@www ~]# route -n
Kernel IP routing table
Destination   Gateway         Genmask         Flags Metric Ref    Use Iface
120.114.142.0 0.0.0.0         255.255.255.192 U     0      0        0 eth1
192.168.1.0   0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.10.0  192.168.1.100   255.255.255.0   UG    0      0        0 eth0
169.254.0.0   0.0.0.0         255.255.0.0     U     0      0        0 eth1
0.0.0.0       120.114.142.254 0.0.0.0         UG    0      0        0 eth1

Wz[Ib󦳨SX{ 192.168.10.0 ѡIpGܡA ping 192.168.10.20 ݬݯण঳^H MA PC2 Wh ping 192.168.1.254 ݬݦS^AAND]w\oInFAJMO@wgiHsW Internet FA O_N PC2 iHP@uAҦp PC1 isuOHڭ̨³zLѳWhӱQ@UA PC2 nsu PC1 ɡALsuVOo˪G

So{@ӫܥiRǿy{Hsuo_OSDաALOA^suM|zL Router A I oO] PC1 P쪺 Router A @ˡAäD 192.168.10.0/24 b 192.168.1.100 ̭աILAϥ Router A wgDFӺb Linux Router AҥHAӫʥ]٬OiHQ^ PC2 NOFC



pGAQn PC1 onzL Router A ~su PC2 ܡANonP Router A ۦPAW[@ѳWhoI pGO Linux tΡApP Router A @˪]wpUG

[root@www ~]# vim /etc/sysconfig/network-scripts/route-eth0
192.168.10.0/24 via 192.168.1.100 dev eth0

[root@www ~]# /etc/init.d/network restart
[root@www ~]# route -n
Kernel IP routing table
Destination    Gateway        Genmask         Flags Metric Ref  Use Iface
192.168.1.0    0.0.0.0        255.255.255.0   U     0      0      0 eth0
192.168.10.0   192.168.1.100  255.255.255.0   UG    0      0      0 eth0
169.254.0.0    0.0.0.0        255.255.0.0     U     0      0      0 eth0
0.0.0.0        192.168.1.254  0.0.0.0         UG    0      0      0 eth0

̫un PC2 ϥ ping iHs PC1AP˪A PC1 ]iH ping PC2 ܡANܧA]wO OK աIdwIӳzLo˪]w觋AA]iHo{@ơANOGyѬOVAAnAѥXhѻP^ӮɪWhzC |ҨӻAbw]pU (Router A P PC1 SB~ѳ]w)Aʥ]OiH PC2 su PC1 AO PC1 oSѥiH^ PC2 ҥHWY~|nAb Router A Ϊ̬O PC1 W]wB~ѳWhڡIo˻AAFaH ^_^

Linux @@RAѪ Router ²aIHWרҨӻAAb Linux Router WXGS@B~u@AunN IP PnҰʡAM[W IP Forward \A A Linux ֤ߤ䴩ʥ]໼AMLu@̪ Linux kernel NDAdwFIuOn²I

Lo̥nOApGA Linux Router ]w𪺸ܡA ӥB٦]w NAT D IP ˧޳NAioSOdNA]٥i|yѻ~PD Wz Linux Router yèSϥΨ NAT \zISOLdNI


8.3 ʺAѾ[]Gquagga (zebra + ripd)

b@몺RAѾWAڭ̥iHzLקѳ]w (route-ethN) ӳ]wnJwѳWhAAѾB@QCLA o˪k`OıoܰQIpGYѦ]´AyɭPݭnsWlqAp@ӡAANonb 8.2-1 Router A P Linux Router ABzPˬdѳWhAuO·Ъ णѾۤvDz߷sѡAӹF۰ʼW[ӵѪTOH

Wz\NOҿתʺAѡCʺAѳq`OΦbѾPѾqAҥHnAѾ㦳ʺAѪ\A AnAѨѾWҴѪʺAѨw~Ao˨ⳡѾ~zLӨwӷqѳWhC ثe`ʺAѨwGRIPv1, RIPv2, OSPF, BGP C

Qnb CentOS WdwoǰʺAѪANonϥ quagga oӳnաIoӳnO zebra peA xiHѦҤ᪺ѦҸ(3)CJMn quagga A۵MNonw˥LoIBzaI

[root@www ~]# yum install quagga
[root@www ~]# ls -l /etc/quagga
-rw-r--r-- 1 root   root      410 10 21  2010 ripd.conf.sample
-rw-r----- 1 quagga quagga     29  5 23 16:14 zebra.conf
-rw-r--r-- 1 root   root      373 10 21  2010 zebra.conf.sample
.....(Lٲ).....

oӳnҴѪUʺAѨwm /etc/quagga/ ؿAUڭ̥H²檺 RIPv2 wӳBzʺAѡA LAon`NOAקAnҰʤʺAѨwA zebra nҰʤ~IoO]G

ӦUӸѪAȪ]wɳnH /etc/quagga/*.conf ɦWxs~ApWڭ̥iHo{ zebra oӪAȬO]wnFAL ripd ɦWoO .conf CҥHڭ̥nB~@dz]w~C

Fmߤ@Uڭ̪ quagga AMon]p@Ui઺suo㰲]suϥܦpUA@TӰϺqA 𫟺̤jO 192.168.1.0/24 oӥ~ϺAtӤϺOO 192.168.10.0/24 192.168.5.0/24 C

m߰ʺAѩҳ]wsuܷN
8.3-1Bm߰ʺAѩҳ]wsuܷN

WϪⳡ Linux Router OtdPABiHzL 192.168.1.0/24 oӺӷqCbS]wB~ѳWhpUA PC1 P PC2 OLkqIt~Aquagga nPɦw˦bⳡ Linux Router WY~A ӥBڭ̥un]wnoⳡD (eth0, eth1) AݭnʿJB~ѳ]wIiHzL RIP oӸѨwӷdwI


zLo quagga H RIPv2 ѨwUAڭ̥iHPNNѳWhɨϺLѾWYA _¨ϥ route hק Linux ֤߸ѪAoӰʧ@MnֳtܦhILApGOܤpҡA򤣭nϥγo quagga ڡI]Ih@|PıCpGA~үujA򪱤@o quagga tX@ǰʺAѨwAKKI]Oi檺աI

t@IQo@ ripd.conf ]wed] CentOS 5.x w] RIPv2 |hi樭ҡAҥHb CentOS 4.x ]wOΪAnɤSݤXөҥHM..ӬdiHzL ripd.conf debug Ѽƥh]wnA ~o{ RIPv2 {ҰDI̲ google @U~ѨMDnְڡI

8.4 SpGѾɭOP@ IP qG ARP Proxy

pGA@}l]pҴNOP@ Class C AҦp 192.168.1.0/24 A Ӧ]YǦ]nNYǥDhҤAҦp 8.2-1 PC2 ~ PC4 C MS]YǦ]AҥHAܧ PC2 ~ PC4 IP AɧAP@N|b@ӸѾkFI |ҨӻAsuϥܦIUoˡG

bѾӤ䪺 IP ObP@Ӻ쪺]wp
8.4-1BbѾӤ䪺 IP ObP@Ӻ쪺]wp

즸ݨ체֭nUӭIѾ䪺D IP ]wbP@Ӻ줺HӥBٳQWw IP ]wA ...uO@YӤjڡp@ӡAb Linux Router nps@ѰڡHnDIuOnD ] OSI ĤThhѬO@@h]w諸AҥHpGdWOP@Ӻ쪺 IP ɡA N|oͿ~CpBzڡH

ڭ̥q譱ӻAĤ@ӡAqTq (PC1) nsu PC2~PC4 ɡALӬOnzL Linux Router D~ IP (192.168.1.100) ~IӥB Linux Router ٥nӫʥ]zL IP (192.168.1.200) su PC2~PC4 C ɡAʥ]ǻϥܦIoˡG

`qQnǰe줺qhʥ]yV
8.4-2B`qQnǰe줺qhʥ]yV

boӶqAڭ̥iH]wPC2~PC4 IP ҹdd (MAC) ]wb router ~dWA ]A router ~iHN PC2~PC4 ʥ]yFzLCUӡAN²檺zLѳ]wAʥ]ӤoeXhYiC o PC1 --> PC2 DѨMFAO PC2 ǰe PC1 OHڭ̥iHzLUϥܨӷQ@UG

qQnǰe쥿`ɪʥ]yV
8.4-3BqQnǰe쥿`ɪʥ]yV

PC2 nǰeʥ]O PC3, PC4 Aoӫʥ]onǻCOpGݭnǰe쥿`쪺ʥ]ANonzL router 鷺dAAzLѳWhӱNӫʥ]ɦV~Ӷǻ~IoӮɭԴNܦF PC2 A PC1 P Router A IP OboiWNOFAMAzLѧP_Nӫʥ]zL~ӹ~ǻXhYiC ] Linux router ~ eth0 ӹ鷺 eth1 ɡAڭ̥iHo˻G

  1. Linux Router eth0 ӺDQns PC2~PC4 DɡA Linux Router tdF
  2. Linux Router nǰeƨ PC2~PC4 ɡAȥn eth1 ӶǰeF
  3. qQns PC1 Router A ɡA Linux router eth1 tdF
  4. Linux Router nǰeƬ 192.168.1.0/24 AëD PC2~PC4 ɡAݥ eth0 ǰeC

WCBJPϥܤuWǬ۲ŦXIonӵ۬ݬݡC𫟺 (1) P (3) NOzL ARP Proxy (Nz) \աI ԣO ARP Proxy OH²檺ANOڪYid MAC NzLD IP AQnso IP MAC ʥ]ѧLUӪNC|ڭ̹ 8.4-1 ҤlӻANOb Linux Router eth0 WAWw 192.168.1.20, 192.168.1.30, 192.168.1.40 oT IP eth0 MAC WAҥHT IP ʥ]N| eth0 NUA]~s ARP NzHIҥHաAC@b eth0 ݪD|y~PzT IP O Linux Router Ҿ֦Ao˴Nʥ]ǵ Linux Router աI

AUӡA̪ Linux Router nB~wѡA]wpG

]NOAAnwѳWhA PC2~PC4 㦳uvAMLPʥ]~ eth0 ӶǰeC o˴NFڭ̩ҷQnաI^_^IݼˤlGA]w譱ٮ²檺AAiHzL arp H route oӫOӹFI

# 1. ]w~ eth0  ARP ProxyAT IP ۤv MAC
[root@www ~]# arp -i eth0 -s 192.168.1.20 00:E0:81:71:7C:D6 pub
[root@www ~]# arp -i eth0 -s 192.168.1.30 00:E0:81:71:7C:D6 pub
[root@www ~]# arp -i eth0 -s 192.168.1.40 00:E0:81:71:7C:D6 pub
[root@www ~]# arp -n
Address             HWtype  HWaddress      Flags Mask       Iface
192.168.1.30        *       *              MP               eth0
192.168.1.40        *       *              MP               eth0
192.168.1.20        *       *              MP               eth0
# ݭn~֦T IP ޱvAzLoTӫOӫإ ARP I

# 2. }lBzѡAW[ PC2~PC4 ѸgL eth1 Ӷǻ
[root@www ~]# route add -host 192.168.1.20 eth1
[root@www ~]# route add -host 192.168.1.30 eth1
[root@www ~]# route add -host 192.168.1.40 eth1
[root@www ~]# route -n
Kernel IP routing table
Destination    Gateway        Genmask         Flags Metric Ref  Use Iface
192.168.1.40   0.0.0.0        255.255.255.255 UH    0      0      0 eth1
192.168.1.30   0.0.0.0        255.255.255.255 UH    0      0      0 eth1
192.168.1.20   0.0.0.0        255.255.255.255 UH    0      0      0 eth1
192.168.1.0    0.0.0.0        255.255.255.0   U     0      0      0 eth0
192.168.1.0    0.0.0.0        255.255.255.0   U     0      0      0 eth1
169.254.0.0    0.0.0.0        255.255.0.0     U     0      0      0 eth1
0.0.0.0        192.168.1.254  0.0.0.0         UG    0      0      0 eth0
# o˴NBznVoILӰDڡINO 192.168.1.0/24
# AӤiHǰeI]A@Uĥ|ӨBJonNLR~I

3. ]w@U ARP Proxy u@ (jb eth1 WYo)I
[root@www ~]# arp -i eth1 -s 192.168.1.10  00:E0:4C:F0:B5:5B pub
[root@www ~]# arp -i eth1 -s 192.168.1.254 00:E0:4C:F0:B5:5B pub
# o˥iHFL PC2 ~ PC4 AoTDǻʥ]iHzL router ӶǻI

4. }lM eth1  192.168.1.0/24 
[root@www ~]# route del -net 192.168.1.0 netmask 255.255.255.0 eth1

ҦqbP@Ӻ줺A] default gatway O 192.168.1.254 A netmask O 255.255.255.0A u IP @˦ӤwC̫AҦqiHsuA]QsW Internet I o˪]wNWz\ݨDoIpG@SDANWzOg@Ӹ}ɡA Ҧp /root/bin/network.sh AMNɮ׳]wiAñNgJ /etc/rc.d/rc.local A PɨCsҰʺANons@Ӹ}AYiFAݨDoI

zLoӮרҧA]iHMDAणsuPѪY~jI ӸѬOVAAnҶqoӫʥ]p^ӪDI


I^U

D

ѦҸƻP\Ū

2002/08/09GĤ@I
2003/08/22Gss峹AüW[I^UPҫm
2006/08/21GNª峹ʨ BC
2006/08/30G[JF zebra H ARP Proxy P Router ijDI
2010/09/23GNª CentOS 4.x ʨ B
2010/10/26G׭qFơAרO ARP ILAIDس٨SsI