게이트웨이
IT 위키
더 많은 작업
- Gateway
일반적으로 프로토콜을 달리하는 두 개의 이종 네트워크를 연결해주는 장치의 총칭
- 일반적으로 '게이트웨이'라는 특정 네트워크 장비는 없다.
- 서버 내의 소프트웨어/미들웨어 일수도 있고 라우터와 같은 네트워크 장비일수도 있다.
게이트웨이라는 말은 문맥에 따라 두 가지로 쓰인다. TCP/IP 설정에서 말하는 기본 게이트웨이는 자기 서브넷 밖으로 나가는 출구 역할을 하는 라우터의 주소를 뜻한다. 반면 OSI 모델 설명에서 말하는 게이트웨이는 서로 다른 프로토콜 체계를 변환해 연결하는 장치나 소프트웨어를 뜻하며, 주로 상위 계층에서 동작한다.
기본 게이트웨이(default gateway)는 호스트가 목적지로 가는 경로를 따로 알지 못할 때 패킷을 넘기는 라우터다. 호스트의 라우팅 테이블에서 목적지 0.0.0.0/0(기본 경로)의 다음 홉으로 등록된다.
- 호스트는 목적지 IP 주소와 자기 IP 주소에 서브넷 마스크를 적용해 같은 서브넷인지 판단한다.
- 같은 서브넷이면 ARP로 목적지의 MAC 주소를 알아내 직접 보낸다.
- 다른 서브넷이면 ARP로 기본 게이트웨이의 MAC 주소를 알아낸 뒤, IP 헤더의 목적지는 그대로 두고 이더넷 프레임의 목적지 MAC만 게이트웨이로 해서 보낸다.
- 게이트웨이(라우터)는 자기 라우팅 테이블을 보고 다음 구간으로 패킷을 넘긴다.
- 기본 게이트웨이 주소는 반드시 호스트와 같은 서브넷 안에 있어야 한다.
- 기본 게이트웨이가 빠져 있거나 틀리면 같은 서브넷 안의 통신은 되지만 다른 네트워크와 인터넷 통신은 되지 않는다.
- DHCP를 쓰면 옵션 3번(Router)으로 기본 게이트웨이 주소를 받는다.
윈도우에서는 ipconfig의 "기본 게이트웨이(Default Gateway)" 항목이나 route print의 0.0.0.0 경로로 확인한다.
C:\>ipconfig
C:\>route print
리눅스에서는 ip route 결과의 default 줄이나 route -n 결과의 0.0.0.0 목적지 줄로 확인한다.
ip route
ip route show default
route -n
- ip route에서 기본 경로는 default via 192.0.2.1 dev eth0 같은 형식으로 보인다(주소와 인터페이스 이름은 환경마다 다르다).
| 구분 | 동작 계층 | 설명 |
|---|---|---|
| 기본 게이트웨이 | 3계층(네트워크) | 서브넷 밖으로 나가는 라우터 주소. 실제로는 라우터 또는 L3 스위치다. |
| 프로토콜 변환 게이트웨이 | 3계층 이상 | 서로 다른 프로토콜 체계(예: 다른 메일 시스템, 다른 망 방식)를 변환해 연결한다. 원래 의미의 게이트웨이다. |
| 응용 게이트웨이 | 7계층(응용) | 특정 응용 프로토콜 단위로 요청을 받아 대신 전달하고 검사한다. 프록시 서버와 응용 계층 방화벽이 이 방식이다. |
| VoIP·IoT 게이트웨이 등 | 장비마다 다름 | 전화망과 IP망, 센서망과 IP망처럼 성격이 다른 망을 잇는 장비를 이름에 게이트웨이를 붙여 부른다. |
- 리피터·브리지·라우터·게이트웨이를 OSI 계층과 판단 주소(없음, MAC, IP, 프로토콜)로 구분할 수 있어야 한다.
- 이종 프로토콜 변환은 게이트웨이의 역할이라는 점을 묻는다.
- 기본 게이트웨이가 없거나 잘못되면 다른 네트워크와 통신이 안 된다는 점, ipconfig·route print·ip route로 확인하는 방법을 묻는다.