wA@As峹аѦo

ڭ̦b ¦ ̭ (route) O@ӭnALiHڭ̪ƫʥ]VI ~ApGP@Ӻ̭ӦhqƶqݭnӼsܡAį@w|ӦnAҥH~| Netmask aIѧڭ̴ӨרӷQ@QApGڪ줺uӦhqƶqFA NӺΦpƭӤl (Subnet) |O@Ӥn@kALA ]P줧ʥ]iHqơAҥHoӮɭԧڭ̴Nݭnϥ Router (Ѿ) ʥ]ǰeFI

1.
@@1.1 Ѫ
@@1.2 IP Alias ե\
@@1.3 ƸѪD
2. Ѿ[]
@@2.1
@@2.2 ɻݭnѾH
@@2.3 RAѤѾ
@@2.4 ʺAѤѾ]wGzebra
3. ARP Proxy ѾݦbP@
4. I^U
5. ҫm
6. ѦҸ
7. w糧媺ijGhttp://phorum.vbird.org/viewtopic.php?t=26428


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


Ѫ
pPe¦ͨ쪺AC@DۤvѪA ]NOAznzLAۤ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@linux ~]# 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
127.0.0.0    0.0.0.0     255.0.0.0      U     0      0      0 lo   <== 2
0.0.0.0      192.168.1.2 0.0.0.0        UG    0      0      0 eth1 <== 3
Aڭ̱oDb Linux tΤUѪOѤpƦCjA ҦpWѪAѬOѡy 192.168.1.0/24 --> 127.0.0.0/8 --> 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 ^_^


IP Alias եγ~
ڭ̦b Linux `ΫO̭͹L eth0:0 oӸ˸maH oӸ˸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ڡI bѳWh]wA``ݭni@ǴաAo IP Alias NWγFC רOǮճ쪺mҷI ^_^I

򥻤WADSݨDA_hijAnh IP ɡA̦nbPdWFA pGAunϥ IP Alias ɡApb}ɭԴNҰ IP alias OH²檺kiHϥΡG
zLo²檺kAANiHb}ɭԱҰʧAӨoh IP bP@idWFC L­n`NOApGA eth0 Oϥ DHCP Өo IP ѼƪܡAѩ ifup /etc/init.d/network o script {Xg觋AN|ɭP ifcfg-eth0:0 oӳ]wɤ|QϥΨI ҥHAϥ DHCP Өo eth0 IP ɡAAunϥΤʤ觋 ( ifconfig) ӳ]wA IP Alias FC


ƸѪD
ܦhBͥiೣ@ӥiRQkANOGyڥiiHQΨidA QΨӬۦP쪺 IP ӼW[ڳoDyqzHƹWoO@ӥi檺סA LnzL\h]wӹFAYzݨDܡAiHѦҺHjgo@gG
pGuOªH]wnid IP bP@ӺӤwAziNjSF OHٰOoڭ̦bѪWh̭Lʥ]ǻDnO̾ڥDѪWhaI pGAidɡA]G
AѳWh|OpOHzפW|ܦoˡG
[root@linux ~]# 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
]NOAnǰe 192.168.0.0/24 ɡAu|zLĤ@Wh A]NOzL eth1 ӶǥXhAӤެO eth0 ٬O eth1 iӪʥ]|zL eth1 Ӧ^Aoi|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

Ѿ[]
bP@ϰ̭iHzLs (broadcast) AѨ MAC P IP ѪRAMzL MAC MAC Ӷǰeƫʥ]A bPYNonzLѾC򤰻OѾHLDn\OH Uڭ̴NӲ@I



JMDQnNƶǰe줣PɱozLѾAҥHաAѾDn\NOG y໼ʥ]zoI ]NOAѾ|Rӷݫʥ] IP YAXؼЪ IP AzLѾѪ (routing table) Noӫʥ]VU@ӥؼ (next hop) ǰeCoNOѾ\C

Ѿ\iHpFOHثeؤkiHFG
ѾiHsPw]ơAåBiHĶܦhPʥ]榡Aq`....]KyڡI boӳ`̭Aڭ̨èSnQo򰪶NNAȰQצbAӺY²檺Ѿ\G sӤPCKKIoӥ\ Linux NiHFFI NpPѪO Linux ֤ߥ\ҴѪAo໼ʥ]O]O Linux ֤ߩҴѡA pҰʳoӫʥ]໼OH²ڡAuno˰YiG
[root@linux ~]# echo "1" > /proc/sys/net/ipv4/ip_forward
WoӰʧ@Nb} Linux ֤ߪʥ]໼OCAiHNWzOgJ /etc/rc.d/rc.local A H Linux iHb}ɭԴNҰʫʥ]໼\A ]iHzLק /etc/sysctl.conf ӹF}Ұʫʥ]໼G
[root@linux ~]# vi /etc/sysctl.conf
# NUoӳ]wȭק勵TYiI
net.ipv4.ip_forward = 1

[root@linux ~]# 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, }Ķ) DA NAT OԣH IP ɾNO²檺 NAT DաIKKAAѤFܡHSA NAT iHF IP ɪ\A NAT NO@ӸѾA NAT ѾhF@ӡy IP ഫz\C򻡩OH
ҥHA ѾݪOO Public P Private IP ɡA~ݭn NAT \I NAT \ڭ̷|bɽͤΡAoӳ`Ƚͽפ@UѾӤwڡI ^_^


ɻݭnѾH
@ӻAqƶqpƤQp~OLѾAuݭnQ hub/switch 걵UqA MzL@us Internet WYiCLApGOWLƦʳqj~ҡA ѩL̪ҳq`ݭnҼ{pUpA]~ݭnѾ[]G
ѾNuO@ӳ]ơAnpϥκݬݱzҪWIWȬO|X@ήרҡC Uڭ̥N[]@RAѪѾӪ@aI


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

RAѤѾ[cܷN
Ϥ@BRAѤѾ[cܷN

HWϪ[cӻAoaqDn C class AOO 192.168.0.0/24 192.168.10.0/24 A 𫟺 192.168.0.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ʥ]N㦳¦O@FC

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

b Router A AѩL㦳 Public P Private IP AҥHo Router n㦳 NAT \A oӥӧڭ̦AСC骺INb Linux Router ӪNIbӥDUA ̦ntƨidA@i 192.168.0.100At@i 192.168.10.254 o IPC o Linux Router ]w²檺nRIAiHo˰G


  • Linux Router
    boDݭnidAbo̱NLwqG
    • eth0: 192.168.10.254
    • eth1: 192.168.0.100
    p]wOHo˰NFG
    1. Bz eth0 
    [root@linux ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
    DEVICE=eth0
    BOOTPROTO=static
    BROADCAST=192.168.10.255
    IPADDR=192.168.10.254
    NETMASK=255.255.255.0
    NETWORK=192.168.10.0
    ONBOOT=yes
    
    2. ABz eth1 
    [root@linux ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth1
    DEVICE=eth1
    BOOTPROTO=static
    BROADCAST=192.168.0.255
    IPADDR=192.168.0.100
    NETMASK=255.255.255.0
    NETWORK=192.168.0.0
    GATEWAY=192.168.0.254    <==oӳ]wȫܭnI
    ONBOOT=yes
    
    3. Ұ IP ໼
    [root@linux ~]# echo "1" > /proc/sys/net/ipv4/ip_forward
    # WzOpGSDANL[J /etc/rc.d/rc.local hI
    
    4. sҰʺAåB[
    [root@linux ~]# /etc/init.d/network restart
    [root@linux ~]# 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.10.0    0.0.0.0        255.255.255.0   U     0      0     0 eth0
    127.0.0.0       0.0.0.0        255.0.0.0       U     0      0     0 lo
    0.0.0.0         192.168.0.254  0.0.0.0         UG    0      0     0 eth1
    
    ²aIo˧A Linux Router N OK FoIUӫhO PC2 ӧ@dҡC


  • O@AH PC2 ҡG
    קA PC2 O@ا@~tΡAAҳӬOo˪G
    • IP: 192.168.10.20
    • netmask: 255.255.255.0
    • network: 192.168.10.0
    • broadcast: 192.168.10.255
    • gateway: 192.168.10.254
    H Linux @~tάҡAåB PC2 Ȧ eth0 @idɡAL]wOo˪G
    [root@linux ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
    DEVICE=eth0
    BOOTPROTO=static
    BROADCAST=192.168.10.255
    IPADDR=192.168.10.20
    NETMASK=255.255.255.0
    NETWORK=192.168.10.0
    GATEWAY=192.168.10.254   <==oӳ]w̭nաI
    ONBOOT=yes
    
    [root@linux ~]# /etc/init.d/network restart
    [root@linux ~]# 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
    127.0.0.0     0.0.0.0         255.0.0.0       U     0      0      0 lo
    0.0.0.0       192.168.10.254  0.0.0.0         UG    0      0      0 eth0
    

  • Router A sWѳWhG
    bo˪[cUAz PC2 wgiHsW Internet FIuLAʥ] Internet Ǧ^ӮɡA ѩ Router A èSs 192.168.10.0/24 쪺ѳWhAҥHӫʥ]y|򥢡zIN·ФF ҥHAA Router A nB~W[@WhAoWhOyNؼЬ 192.168.10.0/24 ʥ]ǰe 192.168.0.100 hBzzA] Router A Linux tήɡALӭnoˡG
    [root@linux ~]# route add -net 192.168.10.0 netmask 255.255.255.0 \
    >  gw 192.168.0.100
    
    [root@linux ~]# route -n
    Destination   Gateway        Genmask         Flags Metric Ref  Use Iface
    192.168.10.0  192.168.0.100  255.255.255.0   UG    0      0      0 eth0
    # Aӷ|o{WYo@Whsb~I
    
    p@ӡAA Router A Linux Router NiHqAåBiHǻ 192.168.10.0/24 oI


  • PC1 P PC2 q觋G
    bϤ@AA|o{ PC1 nNw]ѳ]w 192.168.0.254 A ҥH PC1 nP PC2 qɡAʥ]NѡG

    PC1 --> Router A --> Linux Router --> PC2

    LAbϤ@ڭ̪D PC1 P PC2 Pɱ Linux Router WI ҥH PC1 iH[J@ѳWhAWw 192.168.10.0/24 ʥ]ؼЮɡA LiHǨ Linux Router WYiAiHo˰G
    [root@linux ~]# route add -net 192.168.10.0 netmask 255.255.255.0 \
    >  gw 192.168.0.100
    
    ̫un PC2 ϥ ping iHs PC1AP˪A PC1 ]iH ping PC2 ܡA NܧA]wO OK աIKKIdwIӳzLo˪]w觋Az]iHo{@ơA NOGyѬOVAAnAѥXhѻP^ӮɪWhzC |ҨӻAbw]pU (Router A P PC1 SB~ѳ]w)Aʥ]OiH PC2 su PC1 AO PC1 oSѥiH^ PC2 ҥHWY~|nzb Router A Ϊ̬O PC1 W]wB~ѳWhڡIo˻AAFaH ^_^

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

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


  • ʺAѤѾ]wGzebra
    peҭzAtκ޲ziHQ route oӫOʪNѳWh[J֤߷AoӤ觋٬RAѡC ʺAѦPˬONѳWh[J֤߷AuOoӥ[Jʧ@ѳnA (daemon) ۰ʨӰA b Linux W`ѪAȴNO zebra oӮMҴѪC

    ʺAѳq`OΦbѾPѾqAҥHnzѾ㦳ʺAѪ\A AnAѨѾWҴѪʺAѨw~Ao˨ⳡѾ~zLӨwӷqѳWhC ثe`ʺAѨwGRIPv1, RIPv2, OSPF, BGP A zebra 䴩oǸѨwI

    b CentOS WYAڭ̨ϥ quagga oӮMӴ zebra A] quagga Os zebra ӨӪA ƹWAAiHA quagga NO zebra աIw˥LG
    [root@linux ~]# yum install quagga
    [root@linux ~]# ls -l /etc/quagga
    -rw-r--r--  1 root   root      410 Jun  2 02:38 ripd.conf.sample
    -rw-r-----  1 quagga quagga     30 Aug 29 10:50 zebra.conf
    -rw-r--r--  1 root   root      373 Jun  2 02:38 zebra.conf.sample
    .....Lٲ.....
    
    oӮMҴѪUʺAѨwm /etc/quagga/ ؿAUڭ̥H²檺 RIPv2 wӳBzʺAѡA LAon`NOAקAnҰʤʺAѨwA zebra nҰʤ~I oO]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 Ӱ]ڭ̪spUϤGҥܡG

    ʺAѪ²ϥ
    ϤGBʺAѪ²ϥ

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


  • ]w zebra
    ڭ̥]wϤGk䨺@ Linux RouterA zebra.conf AiHo˳]wG
    1. ]w zebra åBҰ zebra 
    [root@linux ~]# vi /etc/quagga/zebra.conf
    hostname linux.router1  <==oӸѾ@ӥDW١AHKI
    password linux1         <==@ӱKXI
    enable password iinux1  <==NoӱKXͮġI
    log file zebra.log      <==NҦ zebra ͪTsnɤ
    
    [root@linux ~]# /etc/init.d/zebra start
    [root@linux ~]# netstat -tunlp
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address   Foreign Address   State   PID/Program name
    tcp        0      0 127.0.0.1:2601  0.0.0.0:*         LISTEN  6422/zebra
    
    JӬݡAѩ zebra oӪAȪȥDnObק Linux tή֤ߤѡA ҥHLȺťӤwAä|ť~~It~Ab zebra.conf oɮ׷A ڭ̩ҳ]wӱKXO@ΪIiHڭ̵nJ zebra oMnOI nFAڭ̨Ӭd@do 2601 port O_TҰʪOH
    [root@linux ~]# telnet localhost 2601
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.
    
    Hello, this is Quagga (version 0.98.3).
    Copyright 1996-2005 Kunihiro Ishiguro, et al.
    
    User Access Verification
    
    Password: <==bo̿JA]wKXڡI
    linux.router1> <==boJy ? zNDh֫Oiϥ
      echo      Echo a message back to the vty
      enable    Turn on privileged mode command
      exit      Exit current mode and down to previous mode
      help      Description of the interactive help system
      list      Print command list
      quit      Exit current mode and down to previous mode
      show      Show running system information
      terminal  Set terminal line parameters
      who       Display who is on vty
    linux.router1> list
      echo .MESSAGE
      enable
      exit
      help
      list
      quit
      show debugging zebra
      show history
      show interface [IFNAME]
      show ip forwarding
      show ip route
    ....Lٲ....
    linux.router1> show ip route
    Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
           I - ISIS, B - BGP, > - selected route, * - FIB route
    
    K>* 0.0.0.0/0 via 192.168.0.254, eth0
    C>* 127.0.0.0/8 is directly connected, lo
    C>* 192.168.0.0/24 is directly connected, eth0
    C>* 192.168.10.0/24 is directly connected, eth1
    linux.router1> exit
    Connection closed by foreign host.
    
    JӬݨAڭ̵nJo zebra n𫗪AiHJyhelpzΰݸy?zA zebra N|ܥXA檺OǡA`ΪMOd߸ѳWhoI Hy show ip route zӬd\AGiHo{ثePw]ѳQܥXӤFA ܪGAK NH router oӫO[J֤ߪѳWhAC hNAѳWhC

    ƹWApGAٷQnW[B~RAѪܡA]iHzL zebra Ӥϥ route OOI ҦpQnW[ 10.0.0.0/24 eth0 ӳBzܡAiHo˰G
    [root@linux ~]# vi /etc/quagga/zebra.conf
    # sWUo@I
    ip route 10.0.0.0/24 eth0
    
    [root@linux ~]# /etc/init.d/zebra restart
    [root@linux ~]# telnet localhost 2601
    User Access Verification
    
    Password: <==o̿JKX
    linux.router1> show ip route
    Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
           I - ISIS, B - BGP, > - selected route, * - FIB route
    
    K>* 0.0.0.0/0 via 192.168.0.254, eth0
    S>* 10.0.0.0/24 [1/0] is directly connected, eth0
    C>* 127.0.0.0/8 is directly connected, lo
    C>* 192.168.0.0/24 is directly connected, eth0
    C>* 192.168.10.0/24 is directly connected, eth1
    
    KKIߨN|hX@ѪWhAӥB̥k| SAYORA (Static route) NC p@ӡAڭ̨tκ޲ziNPhFI ]w zebra AUӧڭ̥iH}lݬ ripd oӪAoI


  • ]w ripd A
    ripd oӪAȥiHbⳡ Router iѳWh洫PqA MաApGAҸ̭ Cisco Ϊ̬OL RIP wѾܡA AM]OiHzLo RIP z Linux Router PLwѾ۷qoI ܤֻAӳ]w ripd aI
    [root@linux ~]# vi /etc/quagga/ripd.conf
    hostname linux.router1  <==o̬O]w Router DW٦Ӥw
    password linux1         <==]wnAۤvKXI
    router rip              <==Ұ Router  rip \
    network 192.168.0.0/24  <==woӺӶiťʧ@I
    network eth0            <==woӤӶiťʧ@
    network 192.168.10.0/24 <==woӺӶiťʧ@I
    network eth1            <==woӤӶiťʧ@
    version 2               <==ҰʪO RIPv2 A
    log stdout              <==bùXзǿX
    
    [root@linux ~]# /etc/init.d/ripd start
    
    [root@linux ~]# netstat -tulnp
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address  Foreign Address State  PID/Program name
    tcp        0      0 0.0.0.0:2602   0.0.0.0:*       LISTEN 21373/ripd
    
    򥻤WAo˴N]w@Ѿ RIP ʺAѨwFIbWY ripd.conf ]wA L|DʥH eth0 192.168.0.0/24 oӺ쪺\ӶijAp@ӡAӧAiѳWhܰʡA Ϊ̬OӺ쪺D IP iʡAANݭnsC Router WʡI ]oǸѾ|۰ʪsL̦ۤvWhIKKIUӡAP˪ʧ@ЧA ϤG䨺 Linux Router W]w@UI ]ӳ]wy{@ˡAҥHo̳NٲաI


  • ˬd RIP wqG
    bⳡ Linux Router ]wAAiHnJ zebra hݳoⳡDѧsGI |ҨӻAnJϤGk䨺 Linux Router AåBnJ zebra A [ѷ|Oo˪pG
    [root@linux ~]# telnet localhost 2601
    User Access Verification
    
    Password: <==nѰOFKXڡI
    linux.router1> show ip route
    Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
           B - BGP, > - selected route, * - FIB route
    
    K>* 0.0.0.0/0 via 192.168.0.254, eth0
    C>* 127.0.0.0/8 is directly connected, lo
    C>* 192.168.0.0/24 is directly connected, eth0
    R>* 192.168.5.0/24 [120/2] via 192.168.0.200, eth0, 00:06:48
    C>* 192.168.10.0/24 is directly connected, eth1
    
    pGAݨWzrAKKINO\աIӳ̥䪺 R NOzL RIP qTwҳ]wѳWhաI p@ӡA̪Ѿ]wNdwo

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

  • ARP Proxy ѾݦbP@
    pGA@}l]pҴNOP@ C class AҦp 192.168.10.0/24 A Ӧ]YǦ]nNYǥDhҤAҦpϤ@ PC2 ~ PC4 C MS]YǦ]AҥHAܧ PC2 ~ PC4 IP A]NOAIUo˪ϥܡG

    ѾOP@쪺Sp
    ϤTBѾOP@쪺Sp

    즸ݨ체֭nUӭI|䪺DbP@Ӻ줺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

    JM OSI ĤThLkѨMAi_HĤGhƳshӳBzHݭٰOo OSI ĤGh̭nNO ARP wA LiHΨӶi IP P MAC CѹϤTڭ̪D PC1 nP PC2 DqɡAݭnzL Linux Router A SkzL ARP iӺ줺qAnǰe PC2~PC4 ʥ]ݭngL Linux Router OH InQkCAiHo˷QG

    ѾOP@쪺Sp
    ϥ|BѾOP@쪺Sp

    ]NOG
    1. Linux Router eth1 ӺDQns PC2~PC4 DɡA Linux Router tdF
    2. Linux Router nǰeƨ PC2~PC4 ɡAȥn eth0 ӶǰeF
    3. Linux Router nǰeƬ 192.168.10.0/24 AëD PC2~PC4 ɡAݥ eth1 ǰeF
    4. Linux Router eth0 ӺDQns PC1 ɡA Lniux Router tdC
    nF (1) P (4) nDäAڭ̥iHzL ARP Proxy oNAԣO ARP Proxy OHNOb Linux Router WwWwyN 192.168.10.20, 192.168.10.30, 192.168.10.40 oT IP MAC Linux Router WIzѩOϰA]OzLs觋F ARP wһݭn IP P MAC AҥHաAC@b eth1 ݪD|y~PzT IP O Linux Router Ҿ֦A o˴Nʥ]ǵ Linux Router աI

    AUӡA̪ Linux Router nB~wѡA]wG
    ]NOAAnwѳWhA PC2~PC4 㦳uvAMLPʥ]~ eth1 ӶǰeC o˴NFڭ̩ҷQnաI^_^IݼˤlGA]w譱ٮ²檺AAiHzL arp H route oӫOӹFI
    1. ]w ARP Proxy Ai eth1 Ҧb IP P MAC 
    [root@linux ~]# arp -i eth1 -s 192.168.10.20 00:11:12:13:14:15 pub
    [root@linux ~]# arp -i eth1 -s 192.168.10.30 00:11:12:13:14:15 pub
    [root@linux ~]# arp -i eth1 -s 192.168.10.40 00:11:12:13:14:15 pub
    # ݹϥ|Aڳo̰] eth1  MAC O 00:11:12:13:14:15 աI
    [root@linux ~]# arp -i eth0 -s 192.168.10.50 00:01:02:03:04:05 pub
    # ݹϥ|Aڳo̰] eth0  MAC O 00:01:02:03:04:05 աI
    
    [root@linux ~]# arp -n
    Address             HWtype  HWaddress      Flags Mask       Iface
    192.168.10.20       *       *              MP               eth1
    192.168.10.30       *       *              MP               eth1
    192.168.10.40       *       *              MP               eth1
    192.168.10.50       *       *              MP               eth0
    # @IT IP ܦݩͪ eth1 աIM@ݩ eth0
    
    2. }lBzѡAݭnM eth0 ѡAåBW[ PC2~PC4 
    [root@linux ~]# route del -net 192.168.10.0 netmask 255.255.255.0 eth0
    [root@linux ~]# route add -host 192.168.10.20 eth0
    [root@linux ~]# route add -host 192.168.10.30 eth0
    [root@linux ~]# route add -host 192.168.10.40 eth0
    # o˴N]wաINAѳWnoI
    
    [root@linux ~]# route -n
    Kernel IP routing table
    Destination     Gateway  Genmask         Flags Metric Ref    Use Iface
    192.168.10.20   0.0.0.0  255.255.255.255 UH    0      0        0 eth0
    192.168.10.30   0.0.0.0  255.255.255.255 UH    0      0        0 eth0
    192.168.10.40   0.0.0.0  255.255.255.255 UH    0      0        0 eth0
    192.168.10.0    0.0.0.0  255.255.255.0   U     0      0        0 eth1
    # ݨWo@AMڪdOb 192.168.10.0/24 A
    # LuwӺǰeAȦ eth1 @NI
    
    @Ioˤ@ӡAA PC1 NiH ping PC2~PC4 DFIƪǿW]SDC oӧ@kO۷UoIw][cQʪҨӻC ^_^I LAѳoӮרҧA]iHMDAणsuPѪY~jI ӸѬOVAAnҶqoӫʥ]p^ӪDI

    I^U

    ҫm

    ѦҸ

    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