코딩과로그
나의 컴퓨터의 라우팅 테이블 해석 본문
리눅스에서 netstat -rn 을 치면 나의 라우팅 테이블 주소를 확인할 수 있습니다.

각 컬럼에 대한 정보
- Destination : 목적지 네트워크의 IP 주소
- Gateway : Next Hop이라고도 불린다. 목적지 네트워크에 해당될 경우 이 Gateway 로 패킷을 전달한다.
- Genmask : subnet mask 라고도 불린다. Destination 과 Genmask 값을 통해 네트워크 주소를 확인해 Gateway에 갈 IP인지 확인할 수 있다.
- Flags :
U = 유효함,
G = 게이트웨이 라우터를 의미함, 즉 호스트나 네트워크에 직접 연결된 놈이 아니다.
- MSS (Maximum Segment Size) :
최대 세그먼트 크기이며 커널이 이 경로를 통해 전송하기 위해 구성할 가장 큰 데이터그램의 크기
값이 0 일 경우, 내부 기본값을 사용하는 것이라 함. 보통 IPv4는 536bytes, IPv6은 1220bytes 가 기본값이라고 한다.
- Iface : 목적지에 연결되는 인터페이스를 의미한다.
# 내 컴퓨터의 라우팅 테이블의 정보를 얻어온다. (우분투 기준)
$ netstat -rn | awk -v OFS='\t' '{print $1, $2, $3, $8}' | column -t
Kernel IP routing
Destination Gateway Genmask Iface
0.0.0.0 192.168.0.1 0.0.0.0 enx00e04d69887d
169.254.0.0 0.0.0.0 255.255.0.0 enx00e04d69887d
172.17.0.0 0.0.0.0 255.255.0.0 docker0
172.18.0.0 0.0.0.0 255.255.0.0 br-f97f50416a3c
172.19.0.0 0.0.0.0 255.255.0.0 br-4e479ce36f64
172.20.0.0 0.0.0.0 255.255.0.0 br-ca67b5bb14ed
192.168.0.0 0.0.0.0 255.255.255.0 enx00e04d69887d
# 이하 해석
# Destination 이 0이면 모든 IP (*)라는 의미이다. 따라서 보내려는 모든 IP는 gateway (192.168.0.1)로 전송될 수 있다.
0.0.0.0 192.168.0.1 0.0.0.0 enx00e04d69887d
# 이하 아직은 중요하지 않아보이는 것들은 생략했다.
...
# Gateway정보가 0.0.0.0 인데 이는 네트워크 주소가 192.168.0 이라면 기본 게이트웨이를 사용한다는 의미이며,
기본 게이트웨이는 Destination이 0.0.0.0 에 해당되는 게이트웨이인 192.168.0.1이 이에 해당된다.
192.168.0.0 0.0.0.0 255.255.255.0 enx00e04d69887d
Destination 과 Genmask 의 조합으로된 네트워크주소가 내가 요청하려는 IP 주소와 매칭될 경우 Gateway 로 패킷을 전달한다.
https://www.baeldung.com/cs/routing-table-entry
https://unix.stackexchange.com/questions/625333/what-is-meant-by-a-mss-of-0
'Devops' 카테고리의 다른 글
OSI 7계층과 TCP/IP 4계층 (0) | 2023.04.06 |
---|---|
OSI 3,4계층 - TCP/IP (IP 프로토콜의 한계) (0) | 2023.04.06 |
CORS는 왜 필요할까? (feat: CSRF 공격 방지) (0) | 2023.03.25 |
특정 기능에 대해 모범적인 REST-API 명세서 작성 (0) | 2023.03.23 |
HTTP 헤더 결과 분석 (0) | 2023.03.22 |