BGP : Border Gateway Protocol
- Distance Vector : 메트릭으로 최적 경로 설정
- 전체 경로에 대한 정보는 알지 못함
- TCP+unicast로 라우팅 테이블 전송
- peer간 TCP 연결을 생성하여 라우팅 테이블 교환 : 포트 179
- peer간 연결 상태를 확인하기 위해서 keepalive packet 전송
1. Arista 장비로 세팅하기
SW#
!
vlan 12, 23, 34
!
interface Ethernet1-4
switchport trunk allowed vlan 12,23,34
switchport mode trunk
!
R1#
!
vlan 12
!
interface Ethernet1
no switchport
!
interface Ethernet1.12
encapsulation dot1q vlan 12
ip address 1.1.12.1/30
!
interface Loopback0
ip address 1.1.1.1/24
!
router bgp 1
!
R2#
!
vlan 12,23
!
interface Ethernet1
no switchport
!
interface Ethernet1.12
encapsulation dot1q vlan 12
ip address 1.1.12.2/30
!
interface Ethernet1.23
encapsulation dot1q vlan 23
ip address 1.1.23.1/30
!
interface Loopback0
ip address 1.1.2.2/24
!
router bgp 234
!
R3#
!
vlan 23,34
!
interface Ethernet1
no switchport
!
interface Ethernet1.23
encapsulation dot1q vlan 23
ip address 1.1.23.2/30
!
interface Ethernet1.34
encapsulation dot1q vlan 34
ip address 1.1.34.1/30
!
interface Loopback0
ip address 1.1.3.3/24
!
router bgp 234
!
R4#
!
vlan 34
!
interface Ethernet1
no switchport
!
interface Ethernet1.34
encapsulation dot1q vlan 34
ip address 1.1.34.2/30
!
interface Loopback0
ip address 1.1.4.4/24
!
router bgp 234
!
서브 인터페이스 상태 확인했을 때, connected여야 함.
R2, R3, R4 : 같은 AS를 사용하는 애들 간 라우팅테이블 광고를 하여 통신을 하기 위해서는 IGP 설정을 해야함
- BGP는 다른 ASN을 next hop으로 생각하기 때문임!
OSPF로 IGP 설정
R2#
!
ip routing
!
router ospf 1
router-id 1.1.2.2
network 1.1.2.0/24 area 0.0.0.0
network 1.1.23.0/30 area 0.0.0.0
!
R3#
!
ip routing
!
router ospf 1
router-id 1.1.3.3
network 1.1.3.0/24 area 0.0.0.0
network 1.1.23.0/30 area 0.0.0.0
network 1.1.34.0/30 area 0.0.0.0
!
R4#
!
ip routing
!
router ospf 1
router-id 1.1.4.4
network 1.1.4.0/24 area 0.0.0.0
network 1.1.34.0/30 area 0.0.0.0
!
eBGP 설정
eBGP peer : 서로 다른 AS에 속하는 인접 라우터(neighbor)
iBGP peer : 서로 같은 AS에 속하는 인접 라우터(neighbor)
BGP 설정
1. eBGP 설정
R1#
!
router bgp 1
router-id 1.1.1.1
neighbor 1.1.12.2 remote-as 234
network 1.1.1.0/24
!
- router bgp {ASN}
- router-id : 각 라우터를 구분하는 값
- 지정하지 않는다면, BGP 설정 당시 동작 중인 인터페이스의 IP 중에서 임의로 지정됨
- 장애 처리를 위해 쉽게 구분할 수 있는 값으로 지정하는 것이 좋음
- neighbor : eBGP neighbor의 IP 주소와 해당 neighbor의 ASN 지정
- ip : 상대방의 serial ip로 설정
- network : 다른 라우터에게 전송할 네트워크
- 반드시 자신의 라우팅 테이블에 저장된 네트워크를 전송
R2#
!
router bgp 234
router-id 1.1.2.2
neighbor 1.1.12.1 remote-as 1
network 1.1.2.0/24
!
# show ip route bgp
# ping 1.1.1.1
# ping 1.1.2.2
로 현재의 상태를 확인해볼 수 있음.
2. iBGP 설정
R2#
!
router bgp 234
neighbor 1.1.3.3 remote-as 234
neighbor 1.1.3.3 update-source Loopback0
neighbor 1.1.4.4 remote-as 234
neighbor 1.1.4.4 update-source Loopback0
network 1.1.2.0/24
network 1.1.3.0/24
network 1.1.4.0/24
!
R3#
!
router bgp 234
router-id 1.1.3.3
neighbor 1.1.2.2 remote-as 234
neighbor 1.1.2.2 update-source Loopback0
neighbor 1.1.4.4 remote-as 234
neighbor 1.1.4.4 update-source Loopback0
network 1.1.3.0/24
!
R4#
!
router bgp 234
router-id 1.1.4.4
neighbor 1.1.2.2 remote-as 234
neighbor 1.1.2.2 update-source Loopback0
neighbor 1.1.3.3 remote-as 234
neighbor 1.1.3.3 update-source Loopback0
network 1.1.4.0/24
!
neighbor : iBGP 의 경우 neighbor을 보통 loopback으로 설정함
- R2 --> R3로 가는 다른 경로가 있음에도 불구하고, R2<->R3의 serial ip로 neighbor를 맺으면 bgp 연결 자체가 끊기기 때문에(아래 그림 참조)
update-source : 상대 라우터와 네이버를 맺기 위한 src ip를 loopback으로 설정
BGP 테이블
BGP 정책과 BGP 테이블의 관계
- BGP 테이블에 저장된 경로 중에 최적 경로 설정
- 다른 프로토콜의 같은 라우팅 경로가 있는지, AD 비교
- 라우팅 테이블 저장
R2 BGP table
# show ip bgp
1. 목적지 네트워크
2. 목적지와 연결된 neighbor
3.
7. *>
- * : 넥스트홉에 문제가 없음
- > : 최적 경로 ) 최적 경로만 다른 라우터에게 광고함
BGP neighbor table
# show ip bgp neighbors
# show ip bgp summary
- State(아래 사진 참조)
BGP 개념에 대한 설명은 아래 블로그가 잘 정리되어있는 듯!
'네트워크' 카테고리의 다른 글
[IP Routing 개정 4판] BGP 4번째 (0) | 2022.01.09 |
---|---|
[IP Routing 개정 4판] BGP 2번째 (0) | 2022.01.02 |
[네트워크]SVI VS Routed port, Serial IP (0) | 2020.05.08 |
Switch mode access VS Switch mode trunk (0) | 2020.05.08 |
[네트워크] 통신방식&전송방식 (1) | 2020.02.25 |