SW1#sh ip bgp
BGP table version is 5, local router ID is 1.1.13.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path
*> 4.4.4.4/32 1.1.13.3 0 34 i
* 1.1.12.2 0 2 34 i
SW1#sh ip rou bgp
B 4.4.4.4 [20/0] via 1.1.13.3, 00:18:48
SW2#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
* 4.4.4.4/32 1.1.12.1 0 1 34 i
*> 1.1.24.4 0 0 34 i
SW2#sh ip rou bgp
B 4.4.4.4 [20/0] via 1.1.24.4, 00:18:48
SW3#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
*>i 4.4.4.4/32 1.1.34.4 0 100 0 i
SW3#sh ip rou bgp
B 4.4.4.4 [200/0] via 1.1.34.4, 00:18:48
SW4#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
*> 4.4.4.4/32 0.0.0.0 0 32768 i
ㆍNetwork : 목적지 네트워크
ㆍNext Hop : 목적지 네트워크와 연결된 next-hop ip, '1.1.13.3', '1.1.12.2'로 부터4.4.4.4 학습.
ㆍMetric :
ㆍLocal Preference :
ㆍWeight :
ㆍAS Path :
ㆍ *: 넥스트 홉으로 문제가 없는 경로
ㆍ >: 최적 경로로 선택됨, 라우팅 테이블에 저장되고 다른 라우터에게 광고됨.
ㆍr: 최적 경로이기는 하나 IGP보다 AS가 높아서 라우팅 테이블에는 BGP 경로로 저장되지 못한 것을 의미.
SW1#sh ip bgp
BGP table version is 2, local router ID is 1.1.13.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path
* 4.4.4.4/32 1.1.13.3 0 3 4 i
*> 1.1.12.2 0 2 4 i
SW1#sh ip rou bgp
B 4.4.4.4 [20/0] via 1.1.12.2, 00:03:24
ㆍNetwork : 목적지 네트워크
ㆍNext Hop : 목적지 네트워크와 연결된 next-hop ip, '1.1.13.3', '1.1.12.2'로 부터 4.4.4.4 학습.
ㆍMetric :
ㆍLocal Preference :
ㆍWeight :
ㆍAS Path :
ㆍ * : 넥스트 홉으로 문제가 없는 경로
ㆍ > : 최적 경로로 선택됨, 라우팅 테이블에 저장되고 다른 라우터에게 광고됨.
ㆍ r : 최적 경로이기는 하나 IGP보다 AS가 높아서 라우팅 테이블에는 BGP 경로로 저장되지 못한 것을 의미.
SW2#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
*> 4.4.4.4/32 1.1.24.4 0 0 4 i
SW2#sh ip rou bgp
B 4.4.4.4 [20/0] via 1.1.24.4, 00:03:24
SW3#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
* 4.4.4.4/32 1.1.13.1 0 1 2 4 i
*> 1.1.34.4 0 0 4 i
SW3#sh ip rou bgp
B 4.4.4.4 [20/0] via 1.1.34.4, 00:03:24
SW4#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
*> 4.4.4.4/32 0.0.0.0 0 32768 i
-------------- SW-1 --------------
# sh ip bgp
Network Next Hop Metric LocPrf Weight Path
*> 1.1.1.1/32 0.0.0.0 0 32768 i
*> 2.2.2.2/32 1.1.12.2 0 0 234 i
*> 3.3.3.3/32 1.1.12.2 0 234 i
*> 4.4.4.4/32 1.1.12.2 0 234 i
# sh ip rou bgp
B 2.2.2.2 [20/0] via 1.1.12.2, 00:06:14
B 3.3.3.3 [20/0] via 1.1.12.2, 00:03:30
B 4.4.4.4 [20/0] via 1.1.12.2, 00:03:00
-------------- SW-2 --------------
# sh ip bgp
Network Next Hop Metric LocPrf Weight Path
*> 1.1.1.1/32 1.1.12.1 0 0 1 i
*> 2.2.2.2/32 0.0.0.0 0 32768 i
r>i 3.3.3.3/32 3.3.3.3 0 100 0 i
r>i 4.4.4.4/32 4.4.4.4 0 100 0 i
# sh ip rou bgp
B 1.1.1.1/32 [20/0] via 1.1.12.1, 00:06:14
-------------- SW-3 --------------
# sh ip bgp
Network Next Hop Metric LocPrf Weight Path
*>i 1.1.1.1/32 1.1.12.1 0 100 0 1 i
r>i 2.2.2.2/32 2.2.2.2 0 100 0 i
*> 3.3.3.3/32 0.0.0.0 0 32768 i
r>i 4.4.4.4/32 4.4.4.4 0 100 0 i
# sh ip rou bgp
B 1.1.1.1/32 [200/0] via 1.1.12.1, 00:04:45
-------------- SW-4 --------------
# sh ip bgp
Network Next Hop Metric LocPrf Weight Path
*>i 1.1.1.1/32 1.1.12.1 0 100 0 1 i
r>i 2.2.2.2/32 2.2.2.2 0 100 0 i
r>i 3.3.3.3/32 3.3.3.3 0 100 0 i
*> 4.4.4.4/32 0.0.0.0 0 32768 i
# sh ip rou bgp
B 1.1.1.1/32 [200/0] via 1.1.12.1, 00:04:17
iBGP 구성
동일 AS에 포함된 모든 BGP 라우터를 iBGP로 지정하는 Full Mesh 방식 사용.
내부 BGP가 제대로 동작하려면 각 iBGP 라우터는 AS 내의 다른 모든 iBGP 라우터와 피어링되어야 한다. eBGP와 달리 iBGP 피어링은 직접 연결될 필요가 없다.
iBGP 피어링에는 루프백을 사용하는 경우가 많고, 루프백은 한 경로에 장애가 발생하더라도 IGP가 루프백으로 연결되는 다른 경로를 찾을 수 있기 때문에 유용하다.
-------------- SW-2 --------------
O 1.1.34.0/24 [110/2] via 1.1.23.3, 00:07:03, GigabitEthernet1/2
O 3.3.3.3 [110/2] via 1.1.23.3, 00:07:03, GigabitEthernet1/2
O 4.4.4.4 [110/3] via 1.1.23.3, 00:07:03, GigabitEthernet1/2
-------------- SW-3 --------------
O 1.1.12.0/24 [110/2] via 1.1.23.2, 00:07:07, GigabitEthernet1/2
O 2.2.2.2 [110/2] via 1.1.23.2, 00:07:07, GigabitEthernet1/2
O 4.4.4.4 [110/2] via 1.1.34.4, 00:07:07, GigabitEthernet1/3
-------------- SW-4 --------------
O 1.1.12.0/24 [110/3] via 1.1.34.3, 00:06:58, GigabitEthernet1/3
O 1.1.23.0/24 [110/2] via 1.1.34.3, 00:07:08, GigabitEthernet1/3
O 2.2.2.2 [110/3] via 1.1.34.3, 00:06:58, GigabitEthernet1/3
O 3.3.3.3 [110/2] via 1.1.34.3, 00:07:08, GigabitEthernet1/3
BGP는 광고받은 네트워크의 next hop 주소가 라우팅 가능한 것이어야만 해당 네트워크를 사용할 수 있다.
예) SW2, SW3, SW4에서 AS1에 속한 1.1.1.1/32 네트워크의 next hop은 AS 1과 AS 234를 연결하는 SW1의 인터페이스의 주소인 1.1.12.1이다. 따라서 AS 234에 속한 각 라우터에서 1.1.1.1/32 네트워크와 통신이 되려면 next hop 주소가 포함된 1.1.12.0 네트워크로 라우팅이 가능해야 한다.
SW1이 광고하는 1.1.1.1 네트워크의 next hop 1.1.12.0 네트워크를 AS 234에 소속된 라우터들에게 알리기 위해 OSPF에 포함 시킨다.
AS 1로 전송되는 불필요한 OSPF Hello 패킷을 차단한다.
SW-3#sh ip bgp 1.1.1.1
----- 적용 전
BGP routing table entry for 1.1.1.1/32, version 9
Paths: (1 available, no best path)
Not advertised to any peer
Refresh Epoch 1
1
1.1.12.1 (inaccessible) from 2.2.2.2 (2.2.2.2)
Origin IGP, metric 0, localpref 100, valid, internal
----- 적용 후
Paths: (1 available, best #1, table default)
Not advertised to any peer
Refresh Epoch 1
1
1.1.12.1 (metric 2) from 2.2.2.2 (2.2.2.2)
Origin IGP, metric 0, localpref 100, valid, internal, best
2. next-hop-self 옵션 사용
SW2에서 네이버를 설정하면서 next hop IP 주소를 SW3, SW4가 알고 있는 SW2 자신의 주소로 변경한다.
SW-2(config-router)#do sh run | s r b
router bgp 234
neighbor 3.3.3.3 update-source Loopback0
neighbor 4.4.4.4 update-source Loopback0
SW-3#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
*>i 1.1.1.1/32 2.2.2.2 0 100 0 1 i
SW-3#sh ip bgp 1.1.1.1
BGP routing table entry for 1.1.1.1/32, version 12
Paths: (1 available, best #1, table default)
2.2.2.2 (metric 2) from 2.2.2.2 (2.2.2.2)
Origin IGP, metric 0, localpref 100, valid, internal, best
ㆍStatic NAT는 특정 내부 사설 IP가 특정 공용 IP에 항상매핑되기 때문에 웹 서버, 메일 서버와 같이 외부에서 지속적으로 접속해야 하는 서비스에 유용하다.
2. Dynamic NAT
ㆍ동적 NAT는 미리 정의된 글로벌 IP Pool에서 로컬 주소와 글로벌 IP 주소간 동적으로 매핑한다.
ㆍNAT Pool의 크기는 인터넷에 액세스할 수 있는 내부 호스트의 최대 수를 정의한다.
ㆍ외부에서 내부로 직접 접근 불가
ㆍ트래픽이 전송될 때만 공인 IP가 사설 IP에 할당되고 세션이 종료되면 해제된다.
Dynamic 동작 순서
ㆍ1단계: 내부 호스트 PC2에서 외부(8.8.8.8)로 향하는 트래픽을 보낸다.
ㆍ2단계: 라우터는 Inside 인터페이스에서 패킷을 수신.
ㆍ3단계: 라우터는 NAT 구성에 따라 호스트의 IP를 NAT Pool에서 사용 가능한 첫 번째 공인 IP 주소에 매핑, PC2의 IP(10.1.1.2)와 NAT Pool에서 사용 가능한 첫 번째 공인 IP(59.1.1.1) 간에 1:1 매핑되어 NAT Table에 저장된다. 이후 테에블에서 항목이 삭제되면 공인 IP는 NAT Pool에 반환된다.
3. PAT(=NAPT)
ㆍNAT overload라고도 하며, 여러 사설 주소를 하나의 공인 IP 주소로 변환하여 여러 클라이언트의 TCP 세션을 한 클라이언트의 여러 TCP 세션처럼 보이게 한다. (클라이언트-서버 통신의 클라이언트에만 적용된다.)
각 연결에 다른 port 번호를 사용하여 외부 네트워크에 액세스할 수 있도록 한다.
ㆍ 1:N(포트 기반)
ㆍ대규모 사용자 환경에서 인터넷 접속을 위해 사용.
ㆍ외부에서 내부로 접근이 제한적 또는 불가.
호스트 10.1.1.1이 동일한 서버에 여러 TCP 연결을 하려면 다른 TCP 포트를 사용해야 한다.
ㆍ모든 TCP 세션은 한 쌍의 소켓 간에 이루어진다. 로컬 소켓과 우너격 소켓의 조합은 호스트가 각 연결에 대해 서로 다른 TCP 포트를 사용하기 때문에 고유하다.
세 개의 서로 다른 호스트가 동일한 서버에 단일 연결을 하는 경우
ㆍ각 호스트가 동일한 TCP 포트를 사용하고, IP 주소가 다르기 때문에 서버 관점에서는 세 개의 TCP 세션이 서로 다르다.
ㆍ일반 Area에서 default route를 만들어 동일 Area에 속한 라우터들에게 전달하려면 default-information originate 명령어를 사용한다.
ㆍStub Area에서는 ABR이 자동으로 default route를 만들어 LSA type 3을 이용하여 내부로 전송한다.
ㆍdefault-information originate always 명령어를 사용하면 default route가 모두 다운되어도 항상 디폴트 루트를 생성하여 다른 라우터로 광고한다.
SW-2#sh run | include ip rou
ip route 0.0.0.0 0.0.0.0 1.1.23.3
SW-2#sh run | s r o
router ospf 10
default-information originate
SW-1#sh ip rou ospf | b res
O*E2 0.0.0.0/0 [110/1] via 1.1.12.2, 00:01:11, GigabitEthernet1/1
SW-2(config-router)#do sh ip rou | b res
S* 0.0.0.0/0 [1/0] via 1.1.23.3
SW-3#sh ip rou ospf | b res
O*E2 0.0.0.0/0 [110/1] via 1.1.23.2, 00:01:41, GigabitEthernet1/2
interface Loopback30 ip address 3.3.31.3 255.255.255.0 secondary ip address 3.3.30.3 255.255.255.0 ip ospf network point-to-point
router ospf 10 network 3.3.30.0 0.0.1.255 area 10
SW-1#sh ip rou ospf | b set
O IA 3.3.30.0/24 [110/3] via 1.1.12.2, 00:00:30, GigabitEthernet1/1
O IA 3.3.31.0/24 [110/3] via 1.1.12.2, 00:00:30, GigabitEthernet1/1
SW-2(config-router)#do sh ip rou ospf | b set
O 3.3.30.0/24 [110/2] via 1.1.23.3, 00:00:28, GigabitEthernet1/2
O 3.3.31.0/24 [110/2] via 1.1.23.3, 00:00:28, GigabitEthernet1/2
축약 후
SW-3
router ospf 10 network 3.3.30.0 0.0.1.255 area 10
SW-1#sh ip rou | b set
O IA 3.3.30.0/23 [110/3] via 1.1.12.2, 00:00:06, GigabitEthernet1/1
SW-2(config-router)#do sh ip rou | b set
O 3.3.30.0/23 is a summary, 00:01:30, Null0
O 3.3.30.0/24 [110/2] via 1.1.23.3, 00:01:30, GigabitEthernet1/2
O 3.3.31.0/24 [110/2] via 1.1.23.3, 00:01:30, GigabitEthernet1/2
OSPF 외부 네트워크 축약
OSPF로 재분배된 네트워크는 그 네트워크를 재분배한 ASBR에서만 축약이 가능하다.
축약 전
SW-3
interface Loopback30 ip address 3.3.31.3 255.255.255.0 secondary ip address 3.3.30.3 255.255.255.0 ip ospf network point-to-point
router ospf 10 router-id 3.3.3.3 network 1.1.23.3 0.0.0.0 area 10 network 3.3.3.3 0.0.0.0 area 10
SW-1#sh ip rou | b set
O E2 3.3.30.0/23 [110/20] via 1.1.12.2, 00:00:08, GigabitEthernet1/1
SW-2(config-router)#do sh ip rou os | b set
O E2 3.3.30.0/23 [110/20] via 1.1.23.3, 00:00:05, GigabitEthernet1/2
ㆍDDP, LSR, LSA 전송 후 재전송 타이머 기간 내에 상대에게서 ACK를 받지 못하면 문제가 발생한 것으로 간주하고 재전송하는 간격이다.
ㆍ주기는 5초
ip ospf retransmit-interval
Throttle 타이머
ㆍLSA 수신 후 다음 SPF 알고리즘을 계산할 때까지의 시간.
show ip ospf
Initial SPF schedule delay 5000 msecs --- 1
Minimum hold time between two consecutive SPFs 10000 msecs --- 2
Maximum wait time between two consecutive SPFs 10000 msecs --- 3
...........
SPF algorithm last executed 00:31:05.574 ago --- 4
SPF algorithm executed 5 times --- 5
1 - LSA를 수신한 다음 SPF 알고리즘을 계산할 때까지의 지연 시간.
2 - SPF 계산 간의 초기 지연 시간. 이 지연 시간 내에 추가로 LSA를 수신하면 두 배로 늘어난다.
3 - 네트워크가 불안정하여 추가적인 LSA를 연속적으로 받는 경우 SPF 계산을 이 기간 이상 지연시키지 않는다.
SPF 계산 지연 시간을 최대 10초를 넘기지 않는다.
4 - 가장 최근에 이루어진 SPF 계산 후의 경과 시간
5 - SPF 계산 회수 표시.
router ospf 10
timers throttle spf 10 5000 10000
sh ip ospf
.........
Initial SPF schedule delay 10 msecs
Minimum hold time between two consecutive SPFs 5000 msecs
Maximum wait time between two consecutive SPFs 10000 msecs