- Moblie IP
: 이동 장비의 홈 네트워크에 도착한 데이터그램을 이동 장비가 실제로 있는 곳으로 전달하는 시스템을 구축.
: 이전엔 IP 주소 기반으로 라우팅 -> 네트워크가 이동했을 때
1) 네트워크 ID를 보고 라우팅이 아닌 IP 주소 전체를 라우팅
2) 매번 IP 주소 갱신
= 문제가 생김 -> Moblie IP
: 계층 투명성(네트워크 계층에서만 작동)
: 상호호환(Moblie IP 동작을 몰라도 문제 x)
: 확장성 및 보안
: 이동 장비의 홈 네트워크에 있는 라우터는 홈 에이전트
: 이동 장비의 현재 네트워크에 있는 라우터는 외부 에이전트
1) Server X 에서 온 데이터그램을 Home Agent로 전송
2) Home Agent는 데이터 그램을 라우팅을 통해 Foreign Agent로 전송
3) Foreign Agent는 Moblie Node 에게 데이터 그램을 전송
4) Moblie Node는 Foreign Agent 에게 Server X에 보낼 응답 데이터그램 전송
5) Foreign Agent는 Server X 에게 데이터그램 전송
- 용어 정의
Home Agent(홈 에이전트)
: 이동 장비의 홈 네트워크에 위치한 라우터로 이동 장비의 IP 주소를 유지 시키면서 원래 IP 주소로 온 데이터그램을 이동 장비의 현재 위치로 송수신.
Foreign Agent(외부 에이전트)
: 홈 네트워크에서 온 데이터 그램을 전달받아 이동장비로 송수신. 이동 장비의 홈 네트워크 역할 수행(IP 주소 유지)
CoA(Care-of-Address)
: 이동 장비가 외부 네트워크에 접속했을 때 해당 서브넷에서의 물리적인 IP 주소를 지칭한다.
: 이동 장비는 CoA라는 임시 주소를 받음. 목적지로 데이터 그램 전달하는 역할만 함.
- 일반적인 Moblie IP 동작
1) 에이전트 통신
: 이동 장비는 에이전트 통신을 발견해야됨 -> 에이전트가 보내는 광고 메세지로 자신의 위치 파악.
(못받을시 에이전트에서 광고 요청)
2) 네트워크 위치 결정
: 에이전트 발견 메시지를 기반으로 자신의 위치 파악
- 외부에 있는걸로 파악될때
1) CoA 획득
2) 에이전트 등록 : 홈 에이전트에게 자신이 외부 네트워크에 있는것을 알리고 데이터그램 전달 요청
3) 데이터그램 전달 : CoA 종류에 따라 노드에게 직접 전달 or 외부 에이전트에게 전송을 요청
- CoA 종류
1) 공존 CoA(Co-Located Care-of-Address)
: 이동 장비에 직접 할당된 주소(수동, DHCP 등), 송수신되는 데이터 그램은 노드에게 직접 전송
: 외부 에이전트가 없거나 연결을 오래할때 사용
2) 외부 에이전트 CoA
: 홈 네트워크는 이동장비에게 직접 데이터그램을 전송 x -> 외부 에이전트로 전송
: 외부 에이전트는 홈 에이전트가 한 캡슐화를 벗겨서 데이터그램을 이동장비로 전송
: 주소 부족을 신경안써도 됨. 해당 외부 네트워크의 모든 이동 장비는 같은 CoA임.
- 모바일 IP 에이전트 발견 과정
: 이동장비가 자신이 홈 네트워크에 있는지 아닌지 확신이 어려움. 어디인지 알아보고
로컬에서 에이전트로 동작하고 있는 라우터와 통신하는 에이전트 발견과정을 수행함
1) 에이전트/노드 통신 : 이동노드가 로컬 네트워크에 있는 에이전트와 접속을 시도함
2) 현재 위치 발견 : 에이전트 발견과정에서 노드는 자신이 어디있는지 확인 가능(자신이 홈 네트워크인지 외부인지)
3) CoA 할당 : 외부 에이전트 CoA를 사용하면 에이전트 발견 과정 중 이동 장비가 사용할 CoA를 얻는다.
: 모바일 IP 에이전트는 모바일 IP 기능을 가진 라우터임.
: 일반적인 라우터 통신과 같지만 에이전트를 나타내기 위해 추가 정보를 전송한다는 점이 다름
: 현재 위치 파악을 위해선 ICMP(Internet Control Message Protocal) 을 이용해야함
에이전트 광고(Agent Advertisement) : 라우터가 정기적으로 전송, 일반적인 라우터 광고 메시지로 구성
에이전트 요청(Agent Solicitation) : 모바일 IP 장비가 로컬 에이전트에게 광고 메시지 요청
- 홈 에이전트 등록
: 에이전트 발견이 끝나면 일반 IP 장비처럼 통신
: 홈 에이전트랑 통신하면서 필요한 정보와 지시를 주고받아야함 -> 홈 에이전트 등록
: 홈 에이전트에게 전달할 주소인 자신의 CoA 주소를 가르쳐줌
: 성공적으로 등록이 된것을 이동성 바인딩(mobility binding) 이라고 부름
: 등록 과정
- 공존 CoA
1) 이동 장비가 등록 요청을 홈 에이전트에게 보냄
2) 홈 에이전트는 이동 장비에게 등록 응답을 보냄
- 외부 CoA
1) 이동 장비가 등록 요청을 외부 에이전트에게 보냄
2) 외부 에이전트가 등록 요청을 처리하여 홈 에이전트에게 보냄
3) 홈 에이전트는 외부 에이전트에게 등록 응답을 보냄
4) 외부 에이전트가 등록 응답을 받아 처리, 이동 장비에게 전송
: 홈 에이전트와 이동 장비 간의 이동성 바인딩을 하는 과정, 등록이 끝나면 데이터 그램을 전달
- 모바일 IP 터널링
: 데이터그램이 어떤 네트워크를 지나갈 때 사용하는 수로 캡슐화된 데이트그램의 자세한 정보를 임시로 숨겨줌
: 라우팅 확장 헤더를 이용해 캡슐화 오버헤드를 제거
- 외부 에이전트 CoA
: 외부 에이전트에서 터널이 끝, 캡슐화된 메시지를 홈 에이전트에서 받아 외부 IP 헤더를 벗겨내고 원래 데이터 그램을 이동 장비에게 전달
- 공존 CoA
: 이동 장비에서 터널이 끝, 이동 장비가 캡슐화 헤더를 벗겨냄
1) 이동 장비는 외부 네트워크에서 네트워크 어딘가에 있는 노드에게 요청을 보냄
2) 해당 노드는 이동장비에게 응답, 그러나 이동장비는 원래 주소로 전송했기 때문에 홈 네트워크에 도착
3) 홈 에이전트는 도착한 응답을 가로채 이동 장비에게 터널링 함
참고
https://ko.wikipedia.org/wiki/%EB%AA%A8%EB%B0%94%EC%9D%BC_IP