[Network] 네트워크 인터페이스 선택 원리와 기준

Oayenn·2023년 2월 21일
0

네트워크

목록 보기
6/7
post-thumbnail

🔦 본 포스트는 유튜브 널널한 개발자 강의를 기반으로 함을 알립니다.


상황 가정

Chrome 프로그램이 하나 실행되고 있다고 가정해보자.
노트북에는 유선 NIC과 무선 wifi로 인터넷 연결이 되어 있다. 즉, 유선 네트워크와 무선 네트워크가 모두 인터넷에 연결되어 있다.
그렇다면 해당 host(노트북)의 IP 주소는 몇 개가 될까? 2개


추가적인 가정을 해보자.
유선 연결된 인터넷 라인은 K사를, 무선 연결된 인터넷 라인은 S사를 이용 중이다. 이 때 Chrome을 실행하면 socket이 열리고, TCP/IP가 바인딩된다. NIC을 움직이는 device driver와 무선을 움직이는 device driver도 각각 존재한다. 또한 유선 연결된 IP 주소를 1.1.1.1, 무선 연결된 IP 주소를 2.2.2.2 라고 한다.

결과적으로 IP주소가 두 개, 연결된 회선도 두 개, 통신사도 두 곳인 상황이다. 나의 Chrome은 인터넷에 도달하여 네이버의 화면을 보려고 한다.

그렇다면, 네이버에 접속할 때의 루트는 아래 두 가지 중 어느 곳을 따를까? 그리고 누가 그것을 결정할까?


인터페이스 선택 원리와 기준

이러한 경우에 의사결정을 하는 로직이 존재한다.

K사와 S사는 모두 network Interface이다. 우리는 이 인터페이스들 중 선택을 해야 하며 이전 챕터까지는 그것을 switching이라고 불렀다. 이제 조금 더 추상화된 표현을 사용해보자. 인터페이스 선택이다.
그렇다면 나의 노트북은 어떤 인터페이스를 통해 네이버에 접속했을까?


cmd 창을 켜서 `route PRINT`라는 명령어를 입력해보자.

내 host의 라우팅 정보(IPv4 경로 테이블)를 확인할 수 있다.
인터넷으로 갈 수 있는 인터페이스 172.30.1.97이 있고, 게이트웨이는 1번이며 메트릭 값은 50이다. IP 주소가 어떤 network Interface와 연결되는지 결정하는 데는 특정한 기준들이 있다. pc에서 그 기준은 대개 메트릭 값이 된다.

  • 메트릭 값은 경로 상의 네트워크 또는 링크들을 모두 거쳐 지나가는데 할당되는 비용이다. 즉 여기서는 네이버에 접속하는 비용이다.
  • 따라서 라우터는 가장 적은 메트릭 값을 갖는 경로를 찾게 된다.
  • 메트릭은 사용자가 제어판에서 임의로 지정할 수도 있다. 자동 메트릭을 해제하고 인터페이스 메트릭에 1~9999의 숫자를 입력하면 우선순위가 변경된다.

인터넷에 연결된 것이 여러 개 있더라도, 메트릭 값이 가장 적은 순으로 우선 사용한다.


결론

네트워크 인터페이스의 선택은 라우팅 테이블의 메트릭 값에 근거하여 이루어진다.



💭 더 생각해보기

  • 위에서 route PRINT를 사용해 라우터 정보를 찾아본 결과, 연결 가능한 인터페이스는 172.30.1.97 하나였다. 그런데 해당 인터페이스에 두 개의 게이트웨이 172.30.1.254와 172.30.1.56가 배정되어 있으며, 메트릭 값도 50과 51로 상이하다. 그렇다면 한 인터페이스가 두 개의 게이트웨이를 가질 수 있는 걸까?
  • 강의에서는 메트릭 값이 작은 네트워크 인터페이스를 선택하게 된다고 했는데, 이렇듯 인터페이스가 하나인 경우에도 '선택'이라고 할 수 있는 건가?


Reference

https://youtu.be/094pRrSlYKg
https://blog.1nfra.kr/369

profile
차근차근 쌓아올리기

0개의 댓글