KR20000031147A - 파일 전송 프로토콜에 대한 네트워크 주소 변환 적용 방법 - Google Patents

파일 전송 프로토콜에 대한 네트워크 주소 변환 적용 방법 Download PDF

Info

Publication number
KR20000031147A
KR20000031147A KR1019980047022A KR19980047022A KR20000031147A KR 20000031147 A KR20000031147 A KR 20000031147A KR 1019980047022 A KR1019980047022 A KR 1019980047022A KR 19980047022 A KR19980047022 A KR 19980047022A KR 20000031147 A KR20000031147 A KR 20000031147A
Authority
KR
South Korea
Prior art keywords
tcp
header
address
input packet
ftp
Prior art date
Application number
KR1019980047022A
Other languages
English (en)
Other versions
KR100304928B1 (ko
Inventor
김광진
Original Assignee
서평원
엘지정보통신 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 서평원, 엘지정보통신 주식회사 filed Critical 서평원
Priority to KR1019980047022A priority Critical patent/KR100304928B1/ko
Publication of KR20000031147A publication Critical patent/KR20000031147A/ko
Application granted granted Critical
Publication of KR100304928B1 publication Critical patent/KR100304928B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2521Translation architectures other than single NAT servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 파일 전송 프로토콜에 대한 네트워크 주소 변환 적용 방법에 관한 것으로서, 특히 네트워크 주소 변환 기법이 구현된 라우터에서 FTP 응용 프로그램을 처리하기 위한 방법에 관한 것이다.
이와 같은 본 발명은 입력된 패킷의 IP 헤더와 TCP 헤더를 참조하는 단계와, 상기 참조한 결과에 따라 입력된 패킷의 TCP 데이터 부분을 검색하는 단계와, 상기 입력된 패킷의 IP 헤더와 TCP 헤더와 TCP 데이터 부분을 변경하는 단계를 포함하여 이루어진다.

Description

파일 전송 프로토콜에 대한 네트워크 주소 변환 적용 방법
본 발명은 파일 전송 프로토콜(File Transfer Protocol ; 이하, FTP 로 약칭함)에 대한 네트워크 주소 변환(Network Address Translation ; 이하, NAT 로 약칭함) 적용 방법에 관한 것으로서, 특히 NAT 기법이 구현된 라우터(Router)에서 FTP 응용 프로그램을 처리하기 위한 방법에 관한 것이다.
지난 수년 동안 급속하게 성장한 인터넷은 그 구조가 현재와 같은 방대한 연결을 예측할 수 없는 수십년 전에 창안되었기 때문에 가용 인터넷 프로토콜(Internet Protocol ; 이하, IP 로 약칭함) 주소(Address) 고갈이라는 문제에 직면하게 되었다. 따라서, 이러한 IP 의 문제점을 보완하고자 네트워크 주소 변환(NAT) 라는 개념이 등장하였다.
일반적으로, NAT 는 사설망 주소의 재사용 개념에 근간한 것으로서, 라우터에 적용되어져 라우터가 각 포트(Port)에서 데이터를 받아 NAT 매핑 규칙(Mapping Rule)에 따라 IP 패킷(Packet)의 발신지 IP 주소(Source IP Address) 영역(Field)을 공인 IP 주소로 변환하여 전송한다. 상기 NAT 가 적용된 라우터는 별도의 주소 풀(Pool)에 적절량의 공인 IP 주소를 확보하고 있다가 사설망에서 외부망으로의 접속 요청이 있으면 확보하고 있던 공인 IP 주소 중에서 사용되고 있지 않은 주소를 사설망에게 할당한다. 여기에서, 공인 IP 주소의 할당은 사용자가 미리 정의한 매핑 규칙에 따라 수행되고, IP 주소의 변환은 NAT 테이블을 통하여 관리된다.
그리고, 상기 NAT 가 적용된 라우터에서는 네트마스크(Netmask)를 이용하여 주소 군을 두어 접속 요청시마다 그 주소 군의 임의의 주소를 할당하여 공인 IP 주소를 할당한다. 또는, 사설망의 모든 접속을 하나의 IP 주소로 매핑하여 공인 IP 주소를 할당하는데, 각 접속을 구분하기 위하여 전송 제어 프로토콜(Transmission Control Protocol ; 이하, TCP 로 약칭함) 포트를 이용한다.
도 1 은 NAT 기법이 적용된 라우터에서 NAT 매핑 규칙과 NAT 테이블을 나타낸 도면이다.
도 1 에 도시된 바와 같이, 네트워크 주소 변환 기법이 적용된 라우터는 연결된 사설망이 IP 주소가 10.1.1.0 이고 네트마스크가 255.255.255.0 인 사설망일 경우에는 공인된 하나의 IP 주소 150.150.60.250 으로 변환하도록 NAT 매핑 규칙이 설정되어 있다. 상기 사설망으로부터 라우터로 전송되는 패킷은 TCP 포트와 함께 NAT 테이블에 등록되고 이 패킷의 사설망 주소는 NAT 매핑 규칙에 따라 IP 주소와 TCP 포트가 함께 변환되어 송신된다. 한편, 목적지 호스트(Host)로부터 라우터로 전송되는 패킷은 NAT 테이블에 의하여 역으로 변환되어 사설망 호스트로 전송되기 때문에 두 호스트 간의 통신이 가능해진다. 이때, IP 헤더(Header)에서는 발신지 IP 주소를 공인 IP 주소로 변경하고, TCP 헤더에서는 발신지 포트를 변경한다.
이러한 NAT 에 의한 IP 주소 변환은 IP 프로토콜 계층에서 수행되기 때문에 대부분의 응용 프로그램과는 무관하게 동작하여 인터넷의 표준 프로토콜인 TCP/IP 를 기준으로 하는 응용 프로그램을 그대로 이용할 수 있다.
하지만, FTP 응용 프로그램은 데이터 송수신을 위하여 제어 포트와는 별도로 데이터 포트를 따로 두어, 이 데이터 포트에 대한 정보는 TCP 나 IP 의 헤더에 포함되지 않고 데이터 부분에 포함되어 송수신 된다. 즉, FTP 에서는 발신지 IP 주소와 TCP 포트 정보가 데이터의 일부분으로써 전송된다. 참고로, FTP 에 있어서 제어포트는 TCP 포트 21 이고 데이터 포트는 TCP 포트 20 이며, 하나의 접속에 하나의 IP 주소가 변경되는 것이 아니라 제어 포트와 데이터 포트에 대하여 각각 IP 주소가 변경되어야 한다.
따라서, NAT 가 적용된 라우터에서 FTP 응용 프로그램이 수행될 때에는 데이터 포트와 발신지 IP 주소가 데이터의 일부분에 포함되어 전송되므로 FTP 응용 프로그램에 대해서는 NAT 기법을 적용할 수가 없는 문제점이 있었다.
본 발명의 목적은 이상에서 언급한 종래 기술의 문제점을 감안하여 안출한 것으로서, FTP 에 대해서는 IP 헤더와 TCP 헤더 뿐만 아니라 TCP 데이터 부분도 참조하고 변경하도록 하여 FTP 응용 프로그램의 패킷이 효율적으로 전송되도록 하는 파일 전송 프로토콜에 대한 네트워크 주소 변환 적용 방법을 제공하기 위한 것이다.
이상과 같은 목적을 달성하기 위한 본 발명은 입력된 패킷의 IP 헤더와 TCP 헤더를 참조하는 단계와, 상기 참조한 결과에 따라 입력된 패킷의 TCP 데이터 부분을 검색하는 단계와, 상기 입력된 패킷의 IP 헤더와 TCP 헤더와 TCP 데이터 부분을 변경하는 단계를 포함하여 이루어진 것을 특징으로 한다.
바람직하게는, 상기 입력된 패킷의 IP 헤더와 TCP 헤더를 참조하는 단계는 IP 헤더에서는 프로토콜 타입(Protoco Type)을 참조하고 TCP 헤더에서는 목적지(Destination) 포트를 참조하며, 상기 입력된 패킷의 TCP 데이터 부분을 검색하는 단계는 FTP 클라이언트(Client) IP 주소와 TCP 포트를 지정하기 위한 정보를 검색한다. 상기 입력된 패킷의 IP 헤더와 TCP 헤더와 TCP 데이터 부분을 변경하는 단계는 TCP 데이터 부분에서는 FTP 클라이언트 IP 주소를 공인된 IP 주소로 변경하며, 상기 FTP 클라이언트 IP 주소를 공인된 IP 주소로 변경함에 따라 IP 헤더에서는 전체 길이(Total Length) 영역(Field)을 변경하고, TCP 헤더에서는 TCP 체크섬(Checksum) 영역과 시퀀스 번호(Sequence Number) 영역을 변경한다. 한편, 상기 입력된 패킷의 IP 헤더와 TCP 헤더와 TCP 데이터 부분을 변경하는 단계는 상기 패킷이 FTP 서버(Server)로부터 입력되어 FTP 클라이언트로 전송될 경우에는 TCP 헤더의 인식 번호(Acknowledgment Number) 영역을 미리 저장된 시퀀스 번호 영역의 차이값에 의해 변경한다.
도 1 은 NAT 기법이 적용된 라우터에서 NAT 매핑 규칙과 NAT 테이블을 나타낸 도면.
도 2 는 IP 헤더의 구성을 나타낸 도면.
도 3 은 TCP 헤더의 구성을 나타낸 도면.
도 4 는 본 발명에 따른 파일 전송 프로토콜에 대한 네트워크 주소 변환 적용 방법의 흐름을 나타낸 플로우 챠트.
이하, 본 발명의 바람직한 일 실시예에 따른 구성 및 작용을 첨부된 도면을 참조하여 설명한다.
도 2 는 IP 헤더의 구성을 나타낸 도면이고, 도 3 은 TCP 헤더의 구성을 나타낸 도면이고, 도 4 는 본 발명에 따른 파일 전송 프로토콜에 대한 네트워크 주소 변환 적용 방법의 흐름을 나타낸 플로우 챠트이다.
도 2 내지 도 4 를 참조하여 설명하면, 먼저 NAT 기법이 적용된 라우터가 사설망의 임의의 호스트로부터 공인망의 FTP 서버로 FTP 접속을 하기 위한 패킷을 입력받는다(S10). 이어, 라우터가 입력된 패킷의 IP 헤더와 TCP 헤더를 참조한다(S20). 이때, IP 헤더에서는 프로토콜 타입을 참조하고 TCP 헤더에서는 목적지 포트를 참조하여, 프로토콜 타입이 TCP 이고 목적지 포트가 21 인지 확인한다(S30). 이때, 프로토콜 타입이 TCP 이고 목적지 포트가 21 이면 TCP 데이터 부분을 참조하고(S40), 이 조건을 만족하지 않으면 TCP 데이터 부분을 참조하지 않고 기존의 NAT 기법인 헤더만 참조하게 된다(S40). 그리고, FTP 응용 프로그램에 있어서 FTP 클라이언트는 데이터 포트를 사용하기 위하여 FTP 클라이언트의 TCP 포트를 지정하여 패킷을 FTP 서버로 전송하는데, 그 형식은 다음과 같다.
PORT 주소1.주소2.주소3.주소4.정보1.정보2
여기에서, 주소1.주소2.주소3.주소4 는 FTP 클라이언트 IP 주소(주소1.주소2.주소3.주소4)로서 NAT 기법이 적용되기 전의 IP 주소이고, 정보1.정보2 는 FTP 클라이언트의 TCP 포트를 지정하기 위한 정보이다. 이때, 정보1 × 256 +정보1 를 한 값이 FTP 클라이언트의 TCP 포트 번호가 된다.
따라서, 라우터는 상기와 같은 형식을 갖는 TCP 데이터 부분을 검색한다(S50). 그리고, 상기 검색된 패킷에 대해서 IP 헤더와 TCP 헤더와 TCP 데이터 부분을 변경한다(S60). IP 헤더에서는 발신지 IP 주소를 FTP 클라이언트가 FTP 접속을 시도할 때 이미 설정된 공인 IP 주소로 변경한다. 이는 일반적인 NAT 기법에 의한 것이다. TCP 데이터 부분에서는 FTP 클라이언트 IP 주소(주소1.주소2.주소3.주소4)를 공인된 IP 주소로 변경한다. 이때, NAT 매핑 규칙에 따라 새로운 공인 IP 주소와 TCP 포트를 할당하게 되는데, 이 새로운 IP 주소와 TCP 포트는 FTP 데이터 포트를 이용한 접속에서 사용된다. 이와 같이 전체 데이터의 크기가 주소 변경으로 인하여 달라지게 되므로 IP 헤더에서는 전체 길이 영역이 새로이 설정되고 TCP 헤더에서는 TCP 체크섬 영역이 새로이 계산되고, 시퀀스 번호 영역이 달라진 패킷 크기로 인하여 변경된다. 이렇게 각 헤더 및 데이터 부분이 변경된 패킷이 FTP 서버로 전송된다.
한편, FTP 서버로부터 패킷을 입력받아 FTP 클라이언트로 전송하는 경우에는 입력된 패킷의 TCP 헤더의 인식 번호 영역(Acknowledgment Number)을 변경하기 위하여 원래 TCP 헤더의 시퀀스 번호와 새로운 TCP 시퀀스 번호의 차이값을 NAT 테이블에 저장한다. 그리고, 상기 패킷은 IP 헤더의 목적지 IP 주소와 TCP 헤더의 목적지 포트 번호가 NAT 테이블에 의해 원래 값으로 변경된다. TCP 헤더의 인식 번호는 상기 NAT 테이블에 미리 저장된 시퀀스 번호의 차이값에 의해 변경된다. TCP 헤더가의 인식 번호가 변경됨에 따라 TCP 헤더의 체크섬도 다시 계산되어 최종적으로 FTP 클라이언트로 전송된다. 이때, FTP 서버로부터 패킷을 입력받아 FTP 클라이언트로 전송하는 경우에는 TCP 데이터 부분을 검색하지 않으며 TCP 헤더의 시퀀스 번호가 달라짐에 따른 인식 번호를 변경한다.
이상의 설명에서와 같은 본 발명은 NAT 가 적용된 라우터에서 FTP 응용 프로그램이 수행될 경우에 TCP 데이터 부분도 검색하여 FTP 의 제어 포트와 데이터 포트를 지원하게 되므로 FTP 응용 프로그램에 대해서도 패킷이 효율적으로 전송되도록 하는 효과가 있다.

Claims (6)

  1. 입력된 패킷의 IP 헤더와 TCP 헤더를 참조하는 단계와;
    상기 참조한 결과에 따라 입력된 패킷의 TCP 데이터 부분을 검색하는 단계와;
    상기 입력된 패킷의 IP 헤더와 TCP 헤더와 TCP 데이터 부분을 변경하는 단계를 포함하여 이루어진 것을 특징으로 하는 파일 전송 프로토콜에 대한 네트워크 주소 변환 적용 방법.
  2. 제 1 항에 있어서, 상기 입력된 패킷의 IP 헤더와 TCP 헤더를 참조하는 단계는 IP 헤더에서는 프로토콜 타입을 참조하고 TCP 헤더에서는 목적지 포트를 참조하는 것을 특징으로 하는 파일 전송 프로토콜에 대한 네트워크 주소 변환 적용 방법.
  3. 제 1 항에 있어서, 상기 입력된 패킷의 TCP 데이터 부분을 검색하는 단계는 FTP 클라이언트 IP 주소와 TCP 포트를 지정하기 위한 정보를 검색하는 것을 특징으로 하는 파일 전송 프로토콜에 대한 네트워크 주소 변환 적용 방법.
  4. 제 1 항에 있어서, 상기 입력된 패킷의 IP 헤더와 TCP 헤더와 TCP 데이터 부분을 변경하는 단계는 TCP 데이터 부분에서는 FTP 클라이언트 IP 주소를 공인된 IP 주소로 변경하는 것을 특징으로 하는 파일 전송 프로토콜에 대한 네트워크 주소 변환 적용 방법.
  5. 제 1 항 또는 제 4 항에 있어서, 상기 입력된 패킷의 IP 헤더와 TCP 헤더와 TCP 데이터 부분을 변경하는 단계는 상기 FTP 클라이언트 IP 주소를 공인된 IP 주소로 변경함에 따라 IP 헤더에서는 전체 길이 영역을 변경하고, TCP 헤더에서는 TCP 체크섬 영역과 시퀀스 번호 영역을 변경하는 것을 특징으로 하는 파일 전송 프로토콜에 대한 네트워크 주소 변환 적용 방법.
  6. 제 1 항에 있어서, 상기 입력된 패킷의 IP 헤더와 TCP 헤더와 TCP 데이터 부분을 변경하는 단계는 상기 패킷이 FTP 서버로부터 입력되어 FTP 클라이언트로 전송될 경우에는 TCP 헤더의 인식 번호 영역을 미리 저장된 시퀀스 번호 영역의 차이값에 의해 변경하는 것을 특징으로 하는 파일 전송 프로토콜에 대한 네트워크 주소 변환 적용 방법.
KR1019980047022A 1998-11-03 1998-11-03 파일전송프로토콜에대한네트워크주소변환적용방법 KR100304928B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980047022A KR100304928B1 (ko) 1998-11-03 1998-11-03 파일전송프로토콜에대한네트워크주소변환적용방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980047022A KR100304928B1 (ko) 1998-11-03 1998-11-03 파일전송프로토콜에대한네트워크주소변환적용방법

Publications (2)

Publication Number Publication Date
KR20000031147A true KR20000031147A (ko) 2000-06-05
KR100304928B1 KR100304928B1 (ko) 2001-10-19

Family

ID=19557062

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980047022A KR100304928B1 (ko) 1998-11-03 1998-11-03 파일전송프로토콜에대한네트워크주소변환적용방법

Country Status (1)

Country Link
KR (1) KR100304928B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150050679A (ko) * 2013-10-30 2015-05-11 현대중공업 주식회사 원격지 시스템과 중앙제어 시스템 및 이의 통신 방법
KR102156600B1 (ko) * 2019-11-20 2020-09-16 (주)케이사인 네트워크에서 수집된 패킷과 엔드포인트 컴퓨팅 장치의 프로세스 간의 연관관계를 생성하는 시스템 및 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08163139A (ja) * 1994-12-05 1996-06-21 Nippon Telegr & Teleph Corp <Ntt> パケット通信方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150050679A (ko) * 2013-10-30 2015-05-11 현대중공업 주식회사 원격지 시스템과 중앙제어 시스템 및 이의 통신 방법
KR102156600B1 (ko) * 2019-11-20 2020-09-16 (주)케이사인 네트워크에서 수집된 패킷과 엔드포인트 컴퓨팅 장치의 프로세스 간의 연관관계를 생성하는 시스템 및 방법

Also Published As

Publication number Publication date
KR100304928B1 (ko) 2001-10-19

Similar Documents

Publication Publication Date Title
US7171492B1 (en) Method and application programming interface for assigning multiple network addresses
US7779158B2 (en) Network device
US20070147421A1 (en) ISATAP router for tunneling packets and method thereof
JP6040711B2 (ja) 管理サーバ、仮想マシンシステム、プログラム及び接続方法
CN105577852B (zh) 用于生成功能地址的系统和方法
US20100046517A1 (en) Address translator using address translation information in header area on network layer level and a method therefor
US6807184B2 (en) Method and apparatus for parameter borrowing for network address translator configuration
US9819641B2 (en) Method of and a processing device handling a protocol address in a network
Fiuczynski et al. The Design and Implementation of an IPv6/IPv4 Network Address and Protocol Translator.
US6823386B1 (en) Correlating data streams of different protocols
KR100433621B1 (ko) 사설 인터넷의 단대단 서비스를 위한 다중 계층 인터넷프로토콜 및 상기 다중 계층 인터넷 프로토콜 패킷의송/수신 방법
KR100458186B1 (ko) 통신 네트워크 시스템
KR100672050B1 (ko) 분산구조의 디엔에스 프록시 서버 기능이 내장된아이피브이4/아이피브이6 변환장치 및 이 장치를 이용한변환방법
KR100304928B1 (ko) 파일전송프로토콜에대한네트워크주소변환적용방법
Cisco Configuring IBM Channel Attach
Cisco Configuring IBM Channel Attach
Cisco Configuring the TN3270 Server
JP2000156710A (ja) Ipアドレス変換装置
US11902158B2 (en) System and method for forwarding packets in a hierarchical network architecture using variable length addresses
KR20040007389A (ko) 아이피 버전 6 주소 사용 시스템 및 방법
WO2012122710A1 (zh) 一种承载网络及数据传输方法
US7185097B1 (en) Encoding addresses in a communication system
KR100383588B1 (ko) 인터넷 프로토콜 주소 관리장치 및 방법
JP2001230806A (ja) アドレス変換装置
CN114390021A (zh) 基于IPv6单栈的IDC服务提供系统及方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20090626

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee