450 likes | 657 Views
Chapter 2. Extending IP Addresses. Table of Contents. Current Challenges in IP Addressing IP Addressing Solutions Hierarchical Addressing Variable-Length Subnet Masks Route Summarization Classless Interdomain Routing Using IP Unnumbered Serial Interfaces Using Helper Addresses Summary.
E N D
Table of Contents • Current Challenges in IP Addressing • IP Addressing Solutions • Hierarchical Addressing • Variable-Length Subnet Masks • Route Summarization • Classless Interdomain Routing • Using IP Unnumbered Serial Interfaces • Using Helper Addresses • Summary
IP Addressing Issues • IP address 고갈로 인한 문제 • Routing table이 커지는 문제 : 70,000 Route(1999년말 현재) Internet
인터넷이 1981년에 태동된 이래로 매년 폭발적인 성장을 거듭하자 1992년에 이르면서, 인터넷의 라우팅 시스템의 확장성에 관한 심각한 염려가 IETF에서 제기되었다. 이러한 확장성 문제는 다음에 관련된다. • 클래스 B 네트워크 주소 공간의 고갈 예상 • 클래스 C 주소가 할당되면서 글로발 인터넷의 라우팅 테이블 규모의 증대 • 32비트 IPv4 주소의 궁극적인 고갈 • 그때까지의 인터넷의 성장 속도에 비추어서 위 세 항중 처음 두 항은 1994년 내지 1995년이 되면 치명적인 문제가 될 것으로 판단한 IETF는 “Supernetting”또는 “Classless Inter-Domain Routing (CIDR)”라는 새로운 개념을 도입하고 1993년 9월에 이를 표준화하였다[rfc1517, 1518, 1519,1520]. 세번째 문제에 대한 궁극적인 또한 보다 장기적인 측면에서 해결책으로 128비트의 주소 공간을 사용하는 IPv6에 관해 IP Next Generation (IPng or IPv6) WG에서 현재 연구가 진행중이다.
IP Addressing Solutions • IP Addressing and Subnetting
IP Address Solution • Subnet masking (RFCs 950, 1812) August 1985 • Address allocation for private Internets(RFC 1918) February 1996 • Network Address Translation (NAT, RFC 1631) May 1994 • Hierarchical addressing • Variable-length subnet masks (VLSM, RFC 1812 ) June 1995 • Route summarization(RFC 1518) September 1993 • Classless interdomain routing(CIDR, RFC 1518, 1519, 2050) September 1993 ~ November 1996
Subnetting Overview • 네트워크 바운다리를 오른쪽으로 이동시키면(Subnet Mask를 오른 쪽으로 확장 시키면) 추가적인 Subnet을 만들어 진다. 네트워크 당 Host 수는 줄어 든다. • formula 2n : n은 확장 bit의 수이며 2n개의 서브넷이 추가로 만들어 진다. • ip subnet-zero : 2n-2 개의 서브넷수가 아니라 2n개의 서브넷수를 모두 사용할 수 있게 한다. subnet-zero는 모든 Vendor가 지원하는 것은 아니며, Cisco의 경우는 지원한다.
IP Address Classes • IP address 와 Subnet Mask는 dotted decimal 형태로 표시 된다. • IP Address의 첫번째 Octet의 Decimal 값은 Default Class를 결정한다. • 001 - 126 = Class A • 128 - 191 = Class B • 192 - 223 = Class C • 224 - 239 = Class D • 240 - 254 = Class E
0 8 16 24 31 Class A 0 Network id Host id Class B 1 0 Network id Host id Class C 1 1 0 Network id Host id Class D 1 1 1 0 Multicast address Class E 1 1 1 1 Reserved IP 주소 유형(class)
특별한 목적으로 예약된 IP Address • Net ID 부분의 예약: Network number부분의 bit값이 모두 ‘0’이거나,‘1’인것은 이용하지 않는다. • Class A : 0 (00000000)과 127 (01111111)* 여기서 127은 loopback과 내부 test용으로 사용한다. • Class B : 128.0 (1000000.00000000)과 191.255 (10111111.11111111) • Class C : 192.0.0 (11000000.00000000.00000000)과223.255.255 (11011111.11111111.11111111) • Host ID 부분의 예약: Host number부분의 모든 bit값이 ‘0’이거나‘1’인것은 이용하지 않는다. • Host ID가 모두 ‘0’인것 : 해당 Network을 대표하는 host number • Host ID가 모두 ‘1’인것 : 해당 Network에 존재하는 모든 host를 지칭.
Address Class Usage • Address classes A, B, C는 Internet에서 Host 및 Network Address로 사용 된다. • Class D multicast address 중 일부는 routing protocol에 의해서 사용된다. • OSPF : 224.0.0.5(DR Other), 224.0.0.6(DR, BDR) • RIPv2 : 224.0.0.9 • EIGRP: 224.0.0.10 • Class D multicast addresse는 Videoconferencing 등 Application에서 사용하는 그룹 Address로 사용된다.
Hierarchical Addressing • Planning an IP Address Hierarchy • Benefits of Hierarchical Addressing
Route Table Entry의 수를 줄인다. 여러 개의 Subnet Address를 Summarize 할 수 있다. => CPU Cycle 및 사용되는 메모리를 줄일 수 있다. =>빠른 Convergence를 가져 온다. 효율적인 IP Address를 사용하여 IP Address 낭비를 줄일 수 있다. Hierachical Addressing Benifits
10.1.1.0/24 10.1.2.0/24 10.1.253.32/27 …. 10.1.0.0/16 10.1.253.64/27 10.2.0.0/16 10.1.253.0/24 …. 10.3.0.0/16 10.1.254.0/24 10.1.253.160/27 10.1.253.192/27 …. 10.0.0.0 10.253.32.0/19 10.253.64.0/19 10.252.0.0/16 …. 10.253.0.0/16 10.254.0.0/16 10.253.160.0/19 10.253.192.0/19 Hierachical Addressing
Variable-Length Subnet Masks • VLSM Overview • Calculating VLSMs • A Working VLSM Example
VLSM(Variable Length Subnet Mask) 172.16.14.32/27 172.16.14.132/30 A 172.16.1.0/24 172.16.14. 64/27 172.16.14.136/30 B 172.16.0.0/16 HQ HQ 172.16.14.96/27 172.16.2.0/24 C 172.16.14.140/30
Calculating VLSM Subnetted Address: 172.16.32.0/20In Binary 10101100. 00010000.00100000.00000000 VLSM Address: 172.16.32.0/26In Binary 10101100. 00010000.00100000.00000000 1st subnet: 1 0 1 0 1 1 0 0 . 0 0 0 1 0 0 0 0 . 0 0 1 0 0 0 0 0 . 0 0 0 0 0 0 0 0 = 172.16.32.0/26 2nd subnet: 1 7 2 . 16 . 0 0 1 0 0 0 0 0 . 0 1 0 0 0 0 0 0 = 172.16.32.64/26 3rd subnet: 1 7 2 . 16 . 0 0 1 0 0 0 0 0 . 1 0 0 0 0 0 0 0 = 172.16.32.128/26 1 7 2 . 16 . 0 0 1 0 0 0 0 0 . 1 0 0 0 0 0 0 = 172.16.32.192/26 4th subnet: 1 1 7 2 . 16 . 0 0 1 0 0 0 0 1 . 0 0 0 0 0 0 0 0 = 172.16.33.0/26 5th subnet: Network Subnet VLSM Subnet Host
Derived from the 172.16.33.0/26 Subnet Derived from the 172.16.32.0/20 Subnet VLSM Example 172.16.32.0/26 172.16.33.0/30 172.16.32.64/26 172.16.33.4/30 172.16.33.8/30 172.16.32.128/26 172.16.33.12/30 172.16.32.192/26 30-Bit Mask (2 Hosts) 26-Bit Mask (62 Hosts)
Route Summarization • Route Summarization Overview • Summarizing Within an Octet • Summarizing Addresses in a VLSM-Designed Network • Route Summarization Implementation • Route Summarization Operation in Cisco Routers • Summarizing Routes in a Discontiguous Network • Route Summarization Summary
Route Summarization 172.16.25.0/24 I can route to the 172.16.0.0/16 network. 172.16.26.0/24 A B Routing Table 172.16.0.0/16 172.16.27.0/24 Routing Table 172.16.25.0/24 172.16.26.0/24 172.16.27.0/24 • Routing Protocol은 여러 개의 Subnet을 하나의 Route로 Summarize할 수 있다.
Summarizing 172.16.168.0/24 = 10101100 . 00010000 . 10101 000 . 00000000 172.16.169.0/24 = 172 . 16 . 10101 001 . 0 172.16.170.0/24 = 172 . 16 . 10101 010 . 0 172.16.171.0/24 = 172 . 16 . 10101 011 . 0 172.16.172.0/24 = 172 . 16 . 10101 100 . 0 172.16.173.0/24 = 172 . 16 . 10101 101 . 0 172.16.174.0/24 = 172 . 16 . 10101 110 . 0 172.16.175.0/24 = 172 . 16 . 10101 111 . 0 Number of Common Bits = 21Summary: 172.16.168.0/21 Noncommon Bits = 11
Summarizing Address in VLSM Network 172.16.128.0/20 B 172.16.128.0/20 172.16.32.64/26 172.16.32.0/24 CorporateNetwork A C 172.16.0.0/16 172.16.32.128/26 172.16.64.0/20 D 172.16.64.0/20
Summarization Implementation • 여러 개의 IP addresse가 동일한 highest-order bit를 가져야 한다. • Routing decision이 Longest Match로 이루어 져야 한다. • Routing protocol이 Prefix (subnet mask) Length를 전달할 수 있어야 한다.
Route Summarization Operation 172.16.5.33 /32 Host 172.16.5.32 /27 Subnet 172.16.5.0 /24 Network 172.16.0.0 /16 Block of Networks 0.0.0.0 /0 Default • Routing Protocol이 Host-specific route, Network-Specific Route, Default route를 지원한다. • Router는 Longest Match를 지원한다.
C Summarizing Routes in Discontiguous Network 172.16.5.0255.255.255.0 192.168.14.16255.255.255.240 172.16.6.0255.255.255.0 A B RIPv1 Will Advertise Network 172.16.0.0 RIPv1 Will Advertise Network 172.16.0.0 • RIPv1과 IGRP는 Subnet Mask 정보를 넘기지 않아서 불연속적인 Subnet(discontiguous subnet)을 지원하지 않는다. (업데이트 되는 네트워크 정보가 Receiving Interface의 네트워크와 동일한 Major 네트워크인 경우, 업데이트하는 라우터는 네트워크에 대한 정보를 업데이트 할 때, Receiving Interface에 적용된 서브넷마스크와 동일한 서브넷마스크를 적용하여 Update 정보를 보낸다.=> Subnet Mask 정보가 바르게 전달되지 않는다.) • OSPF, EIGRP,RIP v.2 등은 Subnet Mask 정보를 넘기기 때문에 불연속적인 Subnet(discontiguous subnet)을 지원한다.
C Summarizing Routes in Discontiguous Network 192.168.14.16255.255.255.240 172.16.5.0/24 172.16.7.0/24 172.16.6.0/24 172.16.9.0/24 A B EIGRP Advertises 172.16.0.0/16 EIGRP Advertises 172.16.0.0/16 • Router A와 B의 EIGRP는 summarized route인 172.16.0.0/16을 Auto Summarize하여 라우터 C로 Update한다. • Router C는 172.16.0.0/16에 대하여 두개의 Route를 Update 받게 된다. • Router A, B에서 Route Auto-Summarize를 Disable 시켜야 한다. (no auto-summary명령을 사용한다.)
Classless Interdomain Routing • CIDR Example
CIDR(Classless Interdomain Routing) • IP Address의 고갈을 막고, Routing Table Size를 줄이기 위해서 개발된 Mechanism이다. • Class C addresse의 Block이 ISP에 할당이 되고, ISP는 기관 및 조직에 Address의 Subset을 할당 한다. • Address Block들은 routing table에서 summarize 된다.
192.168.15.0/24 192.168.8.0/21 192.168.8.0/24 192.168.9.0/24 CIDR Example 192.168.8.0/24 A 192.168.9.0/24 B HQ 192.168.15.0/24 H • 192.168.8.0/24에서 192.168.15.0/24 네트워크는 HQ Router에서 192.168.8.0/21이라는 하나의 네트워크로 Summarize 된다.
IP Unnumbered Command ip unnumbered interface_type interface_number • Serial Interface에 명시적인 IP Address를 할당하지 않고도 IP processing이 가능하게 한다.IP Address를 절약할 수 있다. Rstrictions on unnumbered interfaces • X.25, SMDS(Switched Multimegabit Data Service) interface는 ip unnumbered가 지원되지 않는다. • HDLC, PPP, SLIP, Frame Relay 등은 물론 지원한다. • Ping으로 ip unnumbered를 사용한 Interface의 Availability를 확인할 수 없다.SNMP를 사용하여 확인할 수 있다. • ip unnumbered 인터페이스가 의존하는 인터페이스는 up이 되어 있어야 한다. (Loopback Interface를 사용하면 Interface Down을 방지 할 수 있다.)
IP Unnumbered Example E0 S0 A 10.1.1.1 interface Ethernet0 ip address 10.1.1.1 255.255.255.0 ! interface Serial0 ip unnumbered Ethernet0 • Serial 0는 자신의 Source Address로 Ethernet 0의 IP address를 사용하고 있다. • IP Unnumbered를 사용하면서 Routing 정보를 제대로 교환하기 위해서는 각 라우터의 Loopback Address를 포함한 모든 네트워크를 Router Configuration Mode에서 선언한다.
E0 S0 E0 A 168.71.8.17 255.255.255.240 A B 168.71.5.1 255.255.255.0 IP Unnumbered Example
E0 S0 E0 A 168.72.8.1 255.255.255.0 A B 168.71.5.1 255.255.255.0 IP Unnumbered Example
Using Helper Addresses • Server Location • IP Helper Address Configuration • IP Helper Address Examples
Helper Addressing Overview BOOTPServer DisklessWorkstation • Router는 Default로 Broadcast(255.255.255.255)를 Forward 시키지 않는다. • Helper Address는 선택적인 Broadcast Forwarding을 가능하게 한다. • (no) ip direct-broadcast는 다른 subnet에 대한 브로드캐스트를 다른 서브넷으로 넘길지의 여부를 결정한다.
Helper Address Looking for boot server. BOOTPServer DisklessWorkstation Unicast Broadcast Broadcast • DHCP, BootP 등의 경우, client는 서버의 IP Address를 모르는 상태에서 Broadcast를 사용한 Processing으로 소기의 목적(여기서는 IP Address 할당)을 달성한다. • Boradcast는 Router에서 차단되므로 다른 Subnet에 서버가 있는 경우는 Processing이 불가능 해진다. • Helper Address는 브로드캐스트 Packet을 받아 다른 서브넷에 있는 서버에 대한 Unicast 또는 다른 Subnet으로의 Broadcast로 변환하여 Forward 시킨다.
Server Location • Multiple Server가 하나의 Remote Subnet에 있는 경우 Host Server Host Server Server • Single server가 하나의 Remote Subnet에 있는 경우 Host Server Server • Multiple Server가 여러 Remote Subnet에 있는 경우
IP Helper Address Commands Router(config-if)#ip helper-address forwarding_address • Broadcast Packet Forwarding을 Enable 시킨다. forwarding_address 설정에서 Forwarding Destination을 지정한다. • Default로 Main UDP Broadcast Packet(tftp:69, DNS:53,Netbios Name:137, Netbios Datagram:138, BootP Server:67, BootP Cleient:68,TACACS:49, Time:37)만 지정된 Address로 Forwarding 된다. • Packet의 Destination Address를 Broadcast(255.255.255.255)에서 특정 Host 또는 directed Broadcast Address로 바꾸어 전송한다. Router(config)#(no)ip forward-protocol udp [ port ] • Default UDP Port에 추가 및 제거가 가능하다.
IP Helper Address Example DisklessWorkstation BootServer 172.16.1.1 E0 172.16.2.2 IP Broadcast interface ethernet 0 ip address 172.16.1.100 255.255.255.0 ip helper-address 172.16.2.2 ip forward-protocol udp 3000 no ip forward-protocol udp tftp
IP Helper Address Example (Directed Broadcast and Unicast) TFTP Server 172.16.3.2 DNS Server 172.16.2.1 BOOTP Server 172.16.2.2 Unicast E0 Directed Broadcast to 172.16.2.255 Broadcast interface ethernet 0 ip address 172.16.1.100 255.255.255.0 ip helper-address 172.16.2.255 ip helper-address 172.16.3.2