network/vyOS

Vyos / 정적라우팅

부엉이사장 2023. 10. 18. 19:51

# 명령어 요약

- 정적라우팅 설정

set protocols static route <destination-network> next-hop <next-hop-ip>

- 라우팅 테이블 보기

show ip route
# 명령모드로 꼭 가서!!

- 정적라우팅 취소하기

del protocols static route <네트워크 대역대>

 

 

 

 

이러한 토폴로지로 일단 VM들을 만들어보겠다.

각각 head vyos, branch vyos, muzzi, dori 라고 이름 지었다.

 

 

# 먼저 head vyos와 branch vyos를 만들어서 통신이 되는지 보자

두 vyos VM을 만들어줬다. 자세한과정은 이전 포스팅을 보고 만들면 된다.

네트워크 어댑터를 각각 생성해줬고 각각에 맞는 네트워크 대역대를 설정해주었다.

그리고 head vyos에서 branch vyos eth0으로 핑을 쳐보겠다.

잘 간다. 뭐 같은대역대로 있으니 당연히 잘 가겠지..

 

 

그럼 head vyos에서 branch vyos의 eth0에 핑을 쳐볼까?

 

어머나 세상에.. 핑이 가질 않는다. 

이전 포스팅에선 pv VM에서 연결된 바이오스 두 인터페이스에 핑이 둘 다 갔었다.

무슨일일까?

 

기억하는가? pcVM에서는 우리는 게이트웨이를 설정해줬었다.

때문에 211.183.3.252에 핑을 쳐주면 VMnet1에 해당하는 아이피주소가 아니기때문에 일단 게이트웨이로 나가게된다.

나간후에는 head vyos에 도착하여 해당 아이피를 찾으므로 핑이 갔던것이다.

 

하지만 이번 포스팅에서 다루는 토폴로지에서는 다르다.

head vyos에서 branch vyos의 eth0에 핑을 치면 head vyos는 해당 네트워크 대역이 어디있는지 모른다. 떄문에 어딜 갈줄 몰라서 멍떄리는것..

이렇다면 이 가여운 핑핑이에게 방향표를 정해주면 될것이다.

 

 

 

# 지하철 출구찾을때, 방향표 만들어주기.

난 사실 네트워크를 이해하면서 지하철을 예시로 생각했었는데, 우리가 흔히 지하철에서 내려서 원하는 출구를 찾을때 주변을 두리번거리며 길을 찾는다. 환승라인도 마찬가지고..

우리가 갈길을 못찾는 불쌍한 핑핑이 입장이라면 이러한 뱡향표를 보고 길을 찾아가고 싶을것이다.

이 때 필요한게 정적라우팅이다.

 

 

 

 

# 정적라우팅

set protocols static route <destination-network> next-hop <next-hop-ip>

이게 정적라우팅 문법이다. 그림으로 표현해보면, 

이렇게 표현할 수 있다. next hop address는 head vyos에서 핑이 가는 주소여야 한다.

이 안내표를 보고 핑핑이가 211.183.3.20 eth1로 가게 된다면, branch vyos에 도달했기때문에 192.168.2.252로 찾아 갈 수 있게되고 192.168.2.100과 같은 대역대에 있기 때문에 핑이 도달 할 수 있다.

그럼 테스트를 해볼까?

핑이 이제 가게 된다.

 

 

# 이제 VM muzzi와 dori를 만들어보자. 다시 토폴로지를 가져오면..

그럼 head vyos에서 192.168.2.252로 핑이 갔으니 dori VM 192.168.2.100으로도 핑이 가겠지?

 

잘 간다.

 

 

 

# 그럼 muzzi VM에서 dori VM으로 핑을 쳐보자

안간다.. 분명 head vyos에서는 dori VM에 핑이 갔었다.

그러나 head vyos에 연결된 muzzi Vm에서 dori VM에 핑이 안가는 이유는 무엇일까?

 

 

 

# 원인은?

일단 '핑이 간다'라는 의미를 다시 짚어보면.. 핑은 단방향으로 간다고 핑이 간게 아니다. 핑은 반드시 되돌아와야 핑이 간다라고 표현할 수 있다.

다시 그림에서

이렇게 핑핑이는 head vyos에서 정적라우팅으로 192.168.2.0/24 대역으로 가는 방향을 정적라우팅으로 정해줬으나, dori VM에는 도달하고 다시 돌아오는 길에있는 branch vyos에서 길을 못찾는거다. 따라서 branch vyos에서 192.168.1.0/24로 가는 방향을 잡아주면 해결이 된다.

 

set protocols static route <destination-network> next-hop <next-hop-ip>

branch vyos에서 정적라우팅을 해주면 된다.

destination network는 192.168.1.0/24, 이 대역대로 가기위해선 head vyos의 eth1인 211.183.3.10아이피를 넣어주면 된다.

 

 

# 그럼 다시 muzzi VM에서 dori VM으로 핑을 쳐보자

 

 

잘간다.

 

 

 

 

# 라우팅 테이블 보기

head vyos에서 라우팅테이블 보는 명령어는

show ip route

근데 이 명령어는 구성모드가 아니라 명령모드에서 쳐야한다.

구성모드에서 명령모드로 나가기 위해선 exit을 치고 나가면 된다.

exit

 

다시 라우팅테이블을 보게 되면,

이렇게 생겼다.

친절하게 codes에 어떤 라우팅인지 보기 쉽게 설명되어있고, C로 시작하는건 커넥티드, 직접 바이오스에 연결되어있는 인터페이스 아이피들이다.

우리가 그린 토폴로지에서 head vyos의 인터페이스는 C> 머시기~ 이렇게 설명되어있다.

그리고 우리가 정적라우팅을 해준건 S> 머시기로 되어있다. static routing이라는뜻..

 

192.168.2.0/24로 가는 신호는 211.183.3.20으로 가라는 뜻이다.

반대로 branch VM에서도 라우팅테이블을 확인해보길 바란다.

 

 

 

 

 

 

 

# 정적라우팅 취소하기

del protocols static route <네트워크 대역대>

뭐이리하면됨