Routing Information Protocol
μ°μ
νμ€μΌλ‘ κ°λ°λμλ€κ° μ΄ν μΈν°λ· νμ€μΌλ‘ λ°μ λ νλ‘ν μ½.
Xerox(μ λ‘μ€)μ PARC(νλ‘μν μ°κ΅¬μ)μμ Ethernet μμ μ¬μ©ν λ λμ κ³μΈ΅μ μν PUP(PARC Universal Protocol)μ κ°λ°νλ€.
κ·Έλ¦¬κ³ PUP λΌμ°ν
μ μ¬μ©νκΈ° μν GWINFO(κ²μ΄νΈμ¨μ΄ μ 보 νλ‘ν μ½)μ λ§λ€μκ³ , μ΄κ² RIPκ° λμλ€.
RIPλ BSDμμ μ¬μ©λλ©΄μ λ리 μ°μ΄κ² λμλ€. 1988λ
IETFμμ RFC 1058 “Routing Information Protocol”μ μ μ λͺ
μνμλ€.
1. RIP νΉμ§
– RIPv1, RIPv2, IPv6μ© RIPngκ° μλ€.
– RIPv1, v2λ UDP 520λ², RIPngλ UDP 521λ²μ μ¬μ©νλ€.
– ν μ₯λΉλ‘λ§ μ μ‘ν λλ Unicast λ°©μμ μ¬μ©νλ€. μ¬λ¬ μ₯λΉλ‘ μ μ‘ν λ, RIPv1λ Broadcast, RIPv2μ RIPngλ Multicast λ°©μμ μ¬μ©νλ€.
– λ©νΈλ¦μΌλ‘ Hop count λ₯Ό μ¬μ©νλ©°, λ§ν¬ μλλ₯Ό λ°μνμ§ μλλ€. λΌμ°ν° ν μκ° 16 μ΄μμΌ λ, λλ¬ν μ μλ λ€νΈμν¬λΌκ³ νλ¨νλ€.
– ν ν΄λ‘μ§ λ³νμ μκ΄μμ΄ 30μ΄λ§λ€ λΌμ°ν
ν
μ΄λΈ μ 체λ₯Ό μΈμ λΌμ°ν°λ‘ μ μ‘νκ³ , 컨λ²μ μ€ μκ°μ΄ κΈΈλ€.
1-1. λ©μΈμ§ μ ν
(1) RIP Request : ν λΌμ°ν°μ λΌμ°ν
ν
μ΄λΈ μΌλΆ/μ 체λ₯Ό μμ²νλ€. ex) λΌμ°ν°κ° μΌμ‘μ λ.
(2) RIP Respond : λΌμ°ν
ν
μ΄λΈ μΌλΆ/μ 체λ₯Ό μ μ‘νλ€. 30μ΄λ§λ€ μ μ‘νκ±°λ Request λ©μΈμ§μ λν μλ΅μΌλ‘ μ μ‘νλ€.
1-2. Timer
(1) νΉμ λ§ν¬κ° λ§λ£λλ μν©μ λλΉνκΈ° μν΄ 180μ΄μ Timeout Timerλ₯Ό κ°λλ€. 180μ΄ μμ ν΄λΉ λΌμ°ν
μ 보λ₯Ό λ°μΌλ©΄ Timerλ μ΄κΈ°ν λκ³ , κ·Έλ μ§ μμΌλ©΄ Metricμ 16μΌλ‘ μ¬λ¦° ν λ€μ λ¨κ³λ‘ λμ΄κ°λ€.
(2) Garbage-Collection Timerλ₯Ό λμμμΌ 120μ΄ λμ μμ λκΈ°λ₯Ό νλ€. μ΄ λ, Respond λ©μΈμ§λ₯Ό 보λ΄λλΌλ μμ λκΈ° μ€μΈ λΌμ°ν
μ 보λ₯Ό ν¬ν¨μμΌ μ μ‘νλ€. λ§μ½ λ€λ₯Έ λΌμ°ν°λ‘ ν΄λΉ λΌμ°ν
μ λ³΄κ° λ€μ΄μ€λ©΄, μ ν¨ν λΌμ°ν
μ λ³΄λ‘ κ°μ£Όνκ³ μ¦μ Timerλ₯Ό μ΄κΈ°ν μν¨λ€.
*** λΌμ°ν
μ 보λ₯Ό μμ νκΈ° μ Timeout Timer, Garbage-Collection Timerλ₯Ό κ±°μ³μΌ μμ λλ€.
2. RIP ν¨ν· ν¬λ§·

[ RIP λ©μΈμ§ ν¬λ§· ]
– Command: RIP λ©μΈμ§ μ ν μ§μ . 1 – RIP Request, 2 – RIP Respond
– Version: RIP λ²μ μ§μ
– 0: μμ½λ νλλ‘ 0μΌλ‘ ν¨λ©
– RTE: λΌμ°ν
μ 보λ₯Ό κ°κ³ μλ νλ. μ΅μ 1κ°~ μ΅λ 25κ°μ λΌμ°ν
μ 보λ₯Ό κ°κ³ μλ€.
[ RTE ν¬λ§· ]
– Address Family Identifier: μ£Όμ μ ν μ§μ . IPμ£Όμλ 2λ‘ μ§μ
– Router Tag: κ²½λ‘μ λν μΆκ° μ 보
– IP μ£Όμ, Subnet Mask, Next Hop, Metric
λ§μ½, RIP μΈμ¦μ μ¬μ©νκ²λλ©΄, λΌμ°ν μ 보μ μΈμ¦ μ 보 1κ°κ° ν¬ν¨λκΈ° λλ¬Έμ μ΅λ 24κ°κΉμ§ κ°μ μ μλ€.
3. RIP μ€μ
3-1. RIP κΈ°λ³Έ μ€μ
RIP μ€μ μ λΌμ°ν μ 보λ₯Ό μ μ‘νλ μΈν°νμ΄μ€λ λ°λμ μ€μ μ ν¬ν¨.
Router(config)# router rip Router(config-router)# version 2 Router(config-router)# network <NETWORK_ID>
3-2. RIP λ€νΈμν¬ μΆμ½
Default Route κ΄κ³
RIPκ° λμνλ μΈμ λΌμ°ν°λ‘ Default Routeλ₯Ό κ΄κ³ νλ€.
# λ°©λ² 1 Router(config)# ip route 0.0.0.0 0.0.0.0 <NEXT_HOP_IP> Router(config)# router rip Router(config-router)# default-information originate # λ°©λ² 2 Router(config)# ip route 0.0.0.0 0.0.0.0 <NEXT_HOP_IP> Router(config)# router rip Router(config-router)# redistribute static
RIP μλ μΆμ½
μΆμ½μ ν΅ν΄ λ€νΈμν¬μ μμ μ±κ³Ό μ±λ₯μ ν₯μμν¬ μ μλ€. μλ μΆμ½μ κΈ°λ³ΈμΌλ‘ μ€μ λμ΄ μλ€.
172.30.1.0/24λ₯Ό μ¬μ©νλ λ€νΈμν¬λ₯Ό κ΄κ³ ν λ, μλ μΆμ½μ΄ λμ΄μλ€λ©΄ IP ν΄λμ€μ λ§κ² 172.30.0.0/16μΌλ‘ κ΄κ³ νλ€.
# μλ μΆμ½ ν΄μ Router(config)# router rip Router(config-router)# no auto-summary
RIP μλ μΆμ½
κ΄λ¦¬μ μμλ‘ λ€νΈμν¬λ₯Ό μΆμ½νλ€. μλμΌλ‘ μΆμ½ν λ, μ£Ό λ€νΈμν¬ λ²μ λ΄μμλ§ μΆμ½ν μ μλ€. RIPv2λ‘ μλ μΆμ½ ν΄μ λ μνμμλ§ μ€μ ν μ μλ€.
‘192.168.0.128/26’, ‘192.168.0.192/26’
—β ‘192.168.0.128/25’ μΆμ½ κ°λ₯
‘192.168.0.0/24’, ‘192.168.1.0/24’
—β ‘192.168.0.0/23’ μΆμ½ λΆκ°
Router(config)# int <INTERFACE> Router(config-if)# ip summary-address rip <NETWORK_ID> <SUBNET>
3-3. Offset Listλ₯Ό μ΄μ©ν λ©νΈλ¦ μ‘°μ
Offset Listλ, EIGRPλ RIPμ κ°μ 거리 λ²‘ν° λΌμ°ν νλ‘ν μ½μμ μ¬μ©νλ ‘μ‘.μμ λ©νΈλ¦μ μ¦κ°μν€λ λ©μ»€λμ¦’μ΄λ€.
μλ₯Ό λ€μ΄, μλμ κ°μ ν ν΄λ‘μ§κ° μλ€κ³ κ°μ ν΄λ³΄μ.

κ²½λ‘ A(R1βR2βR3) μ B(R1βR3)λ₯Ό λΆν λΆμ° μν€κΈ° μν΄μ Offset Listλ₯Ό μ¬μ©νλ€. Aμ λ©νΈλ¦μ 2, Bμ λ©νΈλ¦μ 1μ΄λ―λ‘ Bμ λ©νΈλ¦μ 1 μ¬λ €μ£Όμ΄μΌ νλ€.
R1(config)# ip access-list standard <ACL_NAME> R1(config-std-nacl)# permit <NETWORK_ID> <WILDMASK> R1(config-std-nacl)# exit R1(config)# R1(config)# router rip R1(config-router)# offset-list <ACL_NAME> in [0-16] <INTERFACE> R1(config-router)# offset-list <ACL_NAME> out [0-16] <INTERFACE> ----- R1(config)# ip access-list standard IP_LIST R1(config-std-nacl)# permit 10.10.10.0 0.0.0.255 R1(config-std-nacl)# exit R1(config)# R1(config)# router rip R1(config-router)# offset-list IP_LIST in 1 fa0/1 R1(config-router)# offset-list IP_LIST out 1 fa0/1
1: ACLμ μ΄μ©ν΄ λ©νΈλ¦μ μ‘°μ ν λ€νΈμν¬λ₯Ό μ§μ νλ€.
6: in-λΌμ°ν
μ 보 μμ μ λ©νΈλ¦ μ¦κ°, out-λΌμ°ν
μ 보 μ‘μ μ λ©νΈλ¦ μ¦κ°, λ©νΈλ¦ κ°μ 0~16 κ°μ μ§μ ν μ μλ€.
4. RIP 보μ
4-1. λΌμ°ν μ 보 μΈμ¦
λΌμ°ν μ 보λ₯Ό μμ ν λ, μνΈκ° μΌμΉν λλ§ λΌμ°ν ν μ΄λΈμ μ μ₯νλ€. μ§μ μ°κ²°λ μ₯λΉλΌλ¦¬λ§ μ€μ νλ©΄ λλ€. μμͺ½ λΌμ°ν° λͺ¨λ μ€μ νλ€.
μ€μ
Router(config)# key chain <CHAIN_NAME> Router(config-keychain)# key [0-2147483647] Router(config-keychain-key)# key-string <WORD> Router(config-keychain-key)# exit Router(config-keychain)# exit Router(config)# Router(config)# int <INTERFACE> Router(config-if)# ip rip authentication key-chain <CHAIN_NAME> Router(config-if)# ip rip authentication mode [md5|text]
4-2. λΌμ°ν μ 보 μ°¨λ¨
νΉμ μΈν°νμ΄μ€λ‘ μ€λ λΌμ°ν μ 보λ₯Ό μ°¨λ¨νλ€.
μ€μ
Router(config)# ip prefix-list <PREFIX_NAME> deny 0.0.0.0/0 le 32 Router(config)# Router(config)# router rip Router(config-router)# distribute-list prefix <PREFIX_NAME> in <INTERFACE> Router(config-router)# distribute-list prefix <PREFIX_NAME> out <INTERFACE>
1: (1) λΌμ°ν
μ 보λ₯Ό μ°¨λ¨νκΈ° μν΄ Prefix Listλ₯Ό μ¬μ©νλ€. Access Listλ₯Ό μ¬μ©ν΄λ λλ€. (2) λ§μΌ, νΉμ κ΄κ³ λ§ λ°μΌλ €λ©΄ denyλμ permitμ μ¬μ©νλ€. ‘deny 0.0.0.0/0 le 32’λ λͺ¨λ λ€νΈμν¬λ₯Ό μ°¨λ¨νλ€λ μλ―Έμ΄λ€. Prefix Listμ λν λ΄μ©μ μΆν λ€μ μμΈν νμΈν΄λ³΄λλ‘ νλ€.
4,5: inμ ν΄λΉ μΈν°νμ΄μ€λ‘ μμ νλ κ²μ λν λ΄μ©, outμ μ‘μ νλ κ²μ λν λ΄μ©μ μλ―Ένλ€.