Search
Duplicate

디폴트 라우팅으로 외부(8.8.8.8)와 통신하기

키워드
디폴트라우팅
NAT
VyOS
GNS
정적라우팅
VMware

1. 알고 싶은 점

현재 시나리오
R1, R2, R3, R4 라우터
R3는 NAT
R4는 Vmware의 vmnet8 대역(NAT)의 라우터(NAT, x.x.x.2)
호스트는 각 라우터에 속하게 연결
궁금한점
NAT 내부의 호스트 PC A, PC B가 외부(8.8.8.8)와 통신하기 위해 R1, R2에서 디폴트 라우트 설정을 해줘야하는 이유.(NAT 설정이 되어 있는데에도)
GNS에서는 PC C는 R3를 211.183.3.2로 디폴트 라우팅 설정만 해줘도 외부(8.8.8.8)와 통신이 잘 되는데, *VyOS에서는 왜 같은 상황에서 디폴트 라우팅 설정과 Vyos에 NAT 설정까지 해줘야 외부(8.8.8.8)로 통신이 될까
VyOS : 라우팅 기능 집중한 CLI기반 OS

2. 궁금증1 - 디폴트 라우팅 이유

2.1 문제상황

R1, R2, R3는 서로 간 정적 라우팅 설정을 해두어 PC A, PC B, PC C는 서로 통신이 잘됨
R3는 추가적으로 디폴트 라우팅 설정을 R4로 해두어 R3는 외부와 통신 잘됨
PC C는 외부(8.8.8.8)과 통신이 잘 되는데, PC A, PC B는 왜 안 될까.

2.2 PC C의 상황

외부(8.8.8.8)랑 통신이 가능
R3의 호스트인 동시에 R3는 R4로 디폴트 라우팅이 되어 있음
→ PC C가 외부(8.8.8.8)랑 통신을 할때에 그곳을 가기 위해서는 다음 라우터는 어디로 가야할지 알고 있음(R4)

2.3 PC A와 PC B의 상황

PC A와 PC B는 외부(8.8.8.8)로 통신 불가능
PC A와 PC B가 연결되어 있는 R1의 경우 8.8.8.8로 가는 경로를 알지 못함
→ 따라서 라우팅 설정이 되어 있지 않는 아이피 대역으로 가고자 할때 다음 라우터(Next-hop)를 어디로 갈지 디폴트 라우팅 설정을 해둬야함(R2로 디폴트 라우팅 설정)
R2도 마찬가지로 8.8.8.8로 가는 경로를 알지 못함
→ 라우팅 되어 있지 않는 아이피 대역으로 가고자 할때 R3로 디폴트 라우팅 설정을 해줘야함

2.4 동적 라우팅을 했다면?

R1, R2, R3, R4이 동적 라우팅이 되어 있다면 외부(8.8.8.8)로 통신하는 길을 알기 때문에 추가 설정을 하게 된다면 통신은 가능
R4는 VMware의 라우터이기 때문에 R4와 현실 대역의 공유기와 연결되어 있음
R4 → 현실 대역 공유기로 디폴트 라우팅(정적 라우팅)이 되어 있게 됨
정적 라우팅과 동적 라우팅간 라우팅 정보를 교환하기 위해서는 default-information originate라는 재분배 설정을 통해서 상호 간 라우팅 정보를 교환할 수 있음

3. 궁금증2 - GNS와 VyOS 차이 이유

3.1 문제상황

위의 시나리오에서 R3가 NAT 설정이 안 되어 있다고 가정
GNS에서는 R3가 R4로 디폴트 라우팅 설정 되어 있기 때문에 외부(8.8.8.8)로 통신이 가능
VyOS에서는 R4로 디폴트 라우팅 설정을 해주어도 외부(8.8.8.8)로 통신이 불가

3.2 추측 및 정리

R4는 VMware의 vmnet8의 NAT(라우터)
→ R4의 라우팅이 실제로 어떤식으로 구성되어 있는지 모르기 때문에 정확한 결론을 얻기는 어려움
(추측)R4까지 오는 라우팅은 알아서 잘 되어 있다는 가정하에, GNS처럼 R3가 R4로 디폴트 라우팅만 되어 있어도 PC C는 갈때와 올때 돌아올 길을 알고 있기 때문에 통신이 가능
(추측)VyOS가 좀 내부적으로 다르게 되어 있는 거 같음

4. 결론

NAT 설정이 되어 있으면 내부 대역이 밖으로 나가는 외부 대역에 대한 라우팅을 신경 안 써줘도 된다는 생각 자체가 잘못됨.
라우팅의 기준은 언제나 ‘내가 아는가’. 내가 가고 싶은 곳에 대한 정보를 내가 가지고 있는가가 중요(정적 라우팅 기준)
VyOS와 GNS의 실제 네트워크 구성이 어떤식으로 이루어져 있는지 알 수 없어 어떤 것이 맞고 틀리다기보다 내부적으로 다르게 작용되고 있다고 받아들이는게 나을듯