라이브러리
프로그래밍언어, 각종코드, 관련동향, 논문 등의 저장소
[특집]IPv6 사례로 본 네트워크 장비별 활용법
[특집]IPv6 사례로 본 네트워크 장비별 활용법

 

출처 : 온더넷 7월호

 

IPv6 전환 기술인 듀얼스택, 터널링, 변환 등을 실제로 적용한 사례는 한국전산원이 운용하는 6NGIX, 6KANet과 한국전산원 원내망을 들 수 있다. 이 사례를 바탕으로 네트워크 장비를 어떻게 IPv6 망에 적용해 활용하고 있는지 알아본다.


김진대_한국전산원 차세대인터넷팀

2001년에 구축된 6NGIX(IPv6 Next Generation Internet eXchange)는 국내외 IPv6 망을 상호 연동시키기 위한 IPv6 기반 인터넷 교환 노드이며, 6KANet(IPv6 Korea Advanced Network)은 공공기관과 연구기관에 IPv6 인터넷 서비스를 제공하는 IPv6 가입자망이다. 이는 한국전산원과 그외 국내 산학연 기관이 공동으로, IPv6 기술 개발을 독려하고 국내외 차세대 네트워크 구축 산업과의 연계를 통한 공동 연구 기반을 조성해 IPv6 관련 기술을 시험하고 안정성을 검증하기 위함이다. 2005년 6월말 현재 6NGIX 연동기관은 21개이며, 6KANet 연동기관은 53개이다. 6NGIX와 6KANet외에도 한국전산원은 2003년부터 원내망에 IPv6를 도입해 다양한 IPv6 애플리케이션을 자체적으로 적용해 테스트하고 있다. 이같은 사례를 바탕으로 지속적으로 업그레이드되고 있는 IPv6 전환 기술과 장비별 활용 방법에 대해 자세히 알아본다.

 

IPv6 전환 기술 적용 사례, 6NGIX·한국전산원 원내망

한국전산원 원내망은 (그림 1)의 좌측처럼 백본 라우터에서 듀얼 스택으로 IPv6 네트워크를 구성하는 방법도 있으나, 기존에 구성된 네트워크 인프라에 대한 영향을 최소화하고 업무 영역이 다른 부서와의 마찰을 최소화하기 위해 우측의 그림처럼 별도의 IPv6 전용 라우터를 설치해 IPv4 트래픽과 IPv6 트래픽의 경로를 분리해 사용했다. 좀 더 자세한 구성도는 (그림 2)로, 개인이 사용하는 PC부터 백본 스위치 구간은 IPv6와 IPv4 트래픽이 동시에 오가고 백본 스위치에서 IPv6와 IPv4 트래픽이 분리된다.

이때 생각지 못한 문제점이 발생했는데, 각층의 워크 그룹 스위치는 IPv6 기능이 지원되지 않아 IGMP 스누핑이 enable돼 있는 상태에서는 하단의 PC에서 IPv6 어드레스를 자동 할당받을 수 없고 반드시 IGMP 스누핑 기능을 disable 시켜야만 정상적인 IPv6 통신을 할 수 있다.

2004년 여름에 6NGIX 성능 고도화를 추진해 6NGIX와 6KANet 백본 구간 성능을 개선하는 작업이 이뤄졌다. 기존 6NGIX용 백본 라우터는 IPv6 패킷을 처리할 수 없으며, 기가비트 인터페이스에서 IPv6 트래픽에 대해 핑 손실이 발생했기 때문이다. 또한 6NGIX 백본 스위치는 워크그룹 스위치나 IX의 백본 스위치로 확장성과 성능이 매우 낮았다.

2004년 KOREAv6 시범 사업 수행 등으로 기가비트 이더넷을 통한 신규 포트가 증가될 것으로 예상됐으며, KOREAv6 시범사업, IPv6 포털 사이트, P2P와 같은 신규 서비스 개시로 인한 대량의 트래픽 유입이 예상됐다. 기존에 사용하던 IPv6 파이어월은 OpenBSD 기반의 PC 파이어월로, 운영체제에서 기본 기능만 제공돼 정책 설정 등 기타 관리 상의 어려움이 있었다. 또한 IPv6 포털 사이트 대외 오픈시 사용자가 폭발적으로 늘어날 경우 외부 해킹과 유해 트래픽이 대량으로 침투하면 대처할 수 없을 것으로 예상됐으며, 단일 장비로 구성돼 있어 파이어월이 장애를 일으키면 수동으로 절체해야하는 불편함이 있었다.

사용자 삽입 이미지

사용자 삽입 이미지

 

6NGIX 성능 고도화 작업 실시

이같은 문제점을 해결하기 위해, IPv6 패킷을 하드웨어 방식으로 처리할 수 있으며 라우터 기능을 가진 고성능 백본 스위치를 도입해 기가비트 회선을 연동했으며, KOREAv6, IPv6 포털사이트 등으로 인한 IPv6 트래픽 증가에 대처할 수 있도록 했다. 또한 백본 스위치 중심으로 네트워크 구조를 개편했으며 백본 구간 라우팅 프로토콜을 기존에 사용하던 RIPng보다 더욱 안정적인 OSPFv3를 적용해 네트워크 성능을 향상시켰다.

백본 구간을 기가비트 이더넷으로 구성해 IPv6 포털, KOREAv6 등으로 인한 트래픽 급증시 백본에서의 병목 현상이 일어나지 않을 정도의 충분한 대역폭을 확보했다. 상용 IPv6 파이어월과 파이어월 관리 서버를 도입해 정책 설정이나 관리 등 관리자의 편의성과 관리의 안정성을 증가시켰으며, VRRP를 이용한 이중화 구성으로 파이어월 장애 발생시 자동으로 절체할 수 있도록 만들어 네트워크의 안정성을 증대시켰다.

또한 기가비트 이더넷을 수용할 수 있는 파이어월을 도입해 IPv6 서버팜으로 향하는 트래픽 증가시 파이어월에서의 병목현상 발생하지 않도록 했으며, 늘어나는 IPv6 트래픽 안에서 해킹과 유해 트래픽을 효율적으로 차단할 수 있게 됐다(그림 3). 6NGIX와 6KANet 백본 구간에서 IPv6 멀티캐스트와 IPv6 QoS 적용 시험을 실시해 향후 새로운 IPv6 응용 서비스를 6NGIX나 6KANet에 적용하거나 다른 연구 기관들과 공동으로 관련 연구를 수행할 수 있는 기반을 마련했다.

사용자 삽입 이미지

 

전환 기술 관련 장비 설정법

6NGIX와 6KANet 백본 라우터는 모두 듀얼스택 방식으로 서비스를 제공하고 있다. 다음은 6KANet 가입기관 일부에 대한 백본 라우터 설정을 보여주는데 한 인터페이스에 IPv4와 IPv6가 동시에 적용돼 있음을 확인할 수 있다.

ae0 {
        vlan-tagging;
        unit 32 {
            description XXYY;
            vlan-id 32;
            family inet {
                address 203.233.X.Y/30;
            }
            family inet6 {
                address 2001:2b8:2:XX::YY/127;
            }
        }
-------------------(중략)----------------
        unit 54 {
            description YYXX;
            vlan-id 54;
            family inet {
                address 203.233.Y.X/30;
            }
            family inet6 {
                address 2001:2b8:2:Yf::XX/127;
            }
        }

2004년 초에 6KANet 가입 기관 중 서울 시립도서관을 중심으로 기존에 사용하던 전용회선을 (그림 4)처럼 ATM 메트로 방식으로 전환하는 작업을 수행했다. 이때 IPv4에 대해서는 아무런 문제가 없는데 IPv6에 대해서는 백본 라우터가 BR 모드만 지원해 가상 LAN 번호와 PVC(Permanent Virtual Circuits) 번호를 서로 매칭 시킬 수 없었다. 결국은 (그림 4)처럼 중간에 ATM 인터페이스를 가진 3계층 스위치를 설치해 해결했는데 이런 부분이 IPv6 적용시 유의해야 할 부분이다. 별생각없이 IPv4에 대해서는 당연히 동작하기 때문에 IPv6에 대해서도 문제없이 동작할 것으로 기대하고 접근하다가 장비를 추가로 도입해야만 하는 상황이 발생할 수도 있다. 따라서 필요로 하는 장비 스펙이나 지원하는 기능에 대한 정확한 정보  입수와 사전 시험 수행까지 해보는 노력이 반드시 필요하다.

사용자 삽입 이미지
사용자 삽입 이미지

사용자 삽입 이미지

 

6to4 클라이언트 단말 설정 방법

클라이언트에서의 6to4 어드레스는 IPv6 라우터로부터 라우터 광고(Router Advertisement)를 받지 못할 때 생성된다. 라우터 광고를 수신해 IPv6 프리픽스가 설정된다면 글로벌 어드레스를 자동 생성하고 6to4 어드레스는 생성하지 않는다.

·윈도우 2000/XP

윈도우 2000에서는 마이크로소프트에서 제공하는 'service pack 1'과 'IPv6 development Kit'를 차례로 설치한 후, '제어판→네트워크 연결→로컬 영역 연결→속성→설치→프로토콜'에서 'Microsoft IPv6 Protocol'을 선택해 설치하면 IPv6 스택을 설치한다. 만약 윈도우 2000 단말이 라우터 광고를 받지 못한다면 6to4 어드레스를 설정한다. 6to4 어드레스가 설정된 후에는 다음과 같은 방법에 따라 6to4 터널링을 설정한다.

1) 시작   실행  cmd (enter) 순서대로 실행   ; '명령 프롬프트'를 실행한다.
2) c:\6to4 cfg -R 203.254.38.130   ; 터널 종단점의 IPv4 호환 어드레스 ::203.254.38.130를 이용해 터널 종단점을 설정한다.
3) c:\ipv6 rtu ::/0 2/::203.254.38.130 pub life 1800

·윈도우 계열에서의 IPv6 관련 설정은 대부분 '명령 프롬프트'에 의해 이뤄진다. 
·6to4 터널링 설정을 위해서 우선 터널 종단점을 설정하고, 터널 종단점으로 라우팅을 설정한다.

윈도우 XP는 '명령 프롬프트'에서 'ipv6 install'을 입력하면 IPv6 스택이 올라가고 윈도우 2000과 같이 프리픽스가 설정돼 있지 않다면 6to4 어드레스로 설정된다. 어드레스 설정이 끝나면 다시 '명령 프롬프트' 창에서 'netsh interface ipv6 6to4 set relay 203.254.38.130 enable'을 입력해 IP 어드레스가 203.254.38.130인 터널 종단점을 설정한다.

1) 시작   실행  cmd (enter) 순서대로 실행    ; '명령 프롬프트'를 실행한다.
2) netsh interface ipv6 6to4 set relay 203.254.38.130 enable   ; IP 어드레스가 203.254.38.130인 터널 종단점을 설정해 준다.

윈도우 XP에서의 IPv6 관련 설정은 윈도우 2000보다 안정적이고 간단하다.

 

ISATAP 터널링 설정 방법

ISATAP(Intra-Site Automatic Tunnel Addressing Protocol)는 IPv6 망에 연결된 IPv4 망에서 IPv4/v6 듀얼 호스트가 IPv6 통신을 연결하는 터널링 기법이다. 6to4와 달리 ISATAP은 사이트에 할당된 프리픽스를 사용해 통신하는데, 프리픽스를 제외한 64비트의 인터페이스 식별자는 '0000:5EFE'가 전반부의 32비트를 채우고 뒤의 32비트는 IPv4 어드레스로 설정한다. 시스코 라우터 설정 방법은 다음과 같다.

1) Router(config)# interface Ethernet 0     ; 'ethernet 0' interface 설정 목록으로 들어간다. 
2) Router(config-if)# ip address 1.1.1.1 255.255.255.0 ; IPv4 어드레스를 설정한다.
3) Router(config-if)# exit    ; 'ethernet 0' interface 설정에서 빠져 나온다.
4) Router(config)# interface Tunnel 0   ; tunnel 0 interface 설정으로 들어간다.
5) Router(config-if)# tunnel source ethernet 0  ; 터널의 송수신이 'ethernet 0'로 통해서 이뤄지게 한다.
6) Router(config-if)# tunnel mode ipv6ip isatap  ; 터널링 모드를 ISATAP으로 설정한다.
7) Router(config-if)# ipv6 address 2001:0DB8::/64 eiu-64 ; IPv6의 프리픽스를 설정한다.
8) Router(config-if)# no ipv6 nd suppress-ra   ; 라우터 광고를 통해 프리픽스를 단말들에게 알리도록 한다.

기본적으로 6to4를 설정하는 방법과 동일하며, 다만 'tunnel mode ipv6ip 6to4'를 이용해 터널링 방식을 ISATAP으로 설정했다. 마지막 명령어는 'no ipv6 nd suppress-ra' 라우터 광고를 통해 프리픽스를 단말에 알리도록 설정하는 것이다.
윈도우 XP 클라이언트 설정 방법은 다음과 같다.

1) 시작   실행  cmd (enter) 순서대로 실행  ; '명령 프롬프트'를 실행한다.
2) c:\ ipv6 rlu 2 203.254.38.129   ; ISATAP 터널 종단점을 설정한다.

'명령 프롬프트'에서 'ipv6 install'를 입력하면 IPv6가 설정되며, 설정과 동시에 'Automatic Tunneling Pseudo-Interface'에 ISATAP이 설정된다. ISATAP 설정이 끝나면 'ipv6 rlu 2 [ISATAP 터널 종단점의 IPv4 어드레스]'를 입력해 ISATAP으로 전송되는 패킷들이 터널 종단점으로 갈 수 있도록 한다.

 

IPv4 UDP 통신 이용한 전환방법, Teredo

Teredo는 현재 드래프트 0번까지 제출된 기술로서 아직 많은 논의가 필요하다. 따라서 이 글에서는 Teredo에 대한 개념과 구성 요소까지만 설명한다. Teredo는 NAT 환경에서 IPv4/v6 듀얼 스택 단말이 IPv4 UDP 통신을 이용해 IPv6 통신 연결을 사용하는 터널링 기법이다. 현재까지 나와 있는 터널링 기법 중 유일하게 NAT 환경에서 IPv6 통신을 지원하는 기법으로, 향후 활용 범위가 넓을 것으로 평가된다.

Teredo 어드레스는 Teredo 프리픽스, Teredo 서버의 IPv4 어드레스, 프래그(flag), 은닉 외부 포트 (Obscured External Port), 은닉 외부 어드레스(Obscured External Address)로 구성된다. Teredo 프리픽스는 IANA에 의해 길이 32비트의 3FFE:831F::로 할당됐다. Teredo 서버의 IPv4 어드레스에는 Teredo 기법을 사용하기 위해 필요한 Teredo 서버의 IPv4 어드레스가 들어간다. 그 뒤에는 16비트의 프래그가 오는데 이는 Teredo와 연동할 NAT 기법의 종류에 따라 달라진다. 은닉 외부 포트 번호에는 단말의 통신 포트 번호로 0xFFFF와 XOR이라고 기입되고, 은닉 외부 어드레스에는 단말의 IPv4 어드레스가 16진수로 변환돼 설정된다. (그림 6)은 Teredo 어드레스를 표현한 것이다.

Teredo를 사용해 통신을 하기 위해서는 Teredo 클라이언트, Teredo 서버, Teredo 릴레이가 필요하다(그림 7). Teredo 클라이언트는 IPv6 망에 존재하는 IPv6 단말과 Teredo 릴레이를 통해 통신하고자 하는 단말로, Teredo 통신 연결의 초기화를 위해 Teredo 서버와 통신한다. Teredo 서버는 IPv4와 IPv6 모두에 연결돼 있으며, 기본 기능은 Teredo 클라이언트가 다른 Teredo 클라이언트 혹은 IPv6 전용 단말과 통신하기 위한 초기화 작업을 한다. Teredo 릴레이는 NAT를 거쳐서 전송된 Teredo 패킷을 IPv6 패킷으로 변환해 IPv6 망으로 전달하는 역할을 담당한다.
윈도우 XP의 Advanced Networking Pack을 설치하기 위해서는 윈도우 XP 서비스 팩 1을 우선 설치해야 한다. Advanced Networking Pack은 마이크로소프트의 홈페이지에서 다운로드 받을 수 있다.

1) 시작   실행  cmd (enter) 순서대로 실행   ; '명령 프롬프트'를 실행한다.
2) netsh interface ipv6 set teredo client teredo.ngix.ne.kr 60 34567  ; 단말이 teredo.ngix.ne.kr의 어드레스를 갖는 Teredo 서버를 사용하고, 60초마다 재설정하면서 34567번 포트를 이용해 통신하도록 설정한다.

지금까지 IPv6 네트워크를 구축하기 위한 장비 설정법이나 전환 사례를 살펴봤다. 아직은 IPv6 기능이 일반화되지 않아 IPv6 전환시 예상치 못한 문제점이 발생하는 경우가 많은데 네트워크 관리자의 입장에서 IPv6 장비를 도입할 때 유의할 점을 정리해 보면 다음과 같다.

첫째, 아직은 IPv6 MIB 제공하지 않는 장비가 많으므로 IPv6 트래픽 모니터링이 가능한지 확인해야 한다. 둘째, 구현된 IPv6 관련 기능에 대한 사전 검증시험이 필요하다. IPv4에서는 당연히 되는 기능이 IPv6에서는 안되는 경우도 많고 장비 소개 문서나 로드맵 상에는 지원된다고 나와있으나 실제 확인해 보면 지원되지 않는 기능이 더러 있으므로 검증 시험이 반드시 필요하다. 셋째, 여러 업체의 유사 장비에 대한 상호 기능을 비교해 꼭 필요한 장비를 선택해야 한다.

사용자 삽입 이미지
사용자 삽입 이미지

  Comments,     Trackbacks