2010년 3월 30일 화요일
iPhone 4개로 무엇을 할까?
The Unofficial Apple Weblog ( http://www.tuaw.com/ )에 한국 소녀의 UCC가 소개되어 있기에 덩달아 포스트해본다. 3월 23일 포스트한 후로 29일 오전 9시까지 페이지뷰 수가 500,240을 기록하고 있다. 유투브를 자주 접속하지 않아 얼마나 많은 수인지는 모르겠지만 글쓴이가 주목하는 점은 아이폰 4개를 가지고 레이디 가가의 노래를 불렀다는 점이다. 다른 악기를 전혀 사용하지 않고 아이폰의 I am T-pain, Beatmaker 앱만을 사용하였다.
애플의 비지니스 모델이 폐쇄적이라고는 하지만 일반 사용자에게 해당 사항이 없는듯 하다. 아래 비디오 클립을 즐기기 바란다.
이더넷 카드의 speed/duplex 셋팅값 변경해보자
speed/duplex 값을 조정하기 위해서는 ethtool이 필요하다. 페도라에서 아래와 같이 필요 패키지를 설치하자. 설치는 물론 루트권한으로 진행하여야 한다.
설치가 끝나면 아래 명령으로 제대로 설치가 되었는지 확인하자.
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
MDI-X: Unknown
Supports Wake-on: g
Wake-on: g
Current message level: 0x000000ff (255)
Link detected: yes
[root@localhost iprize]#
eth0는 자신의 이더넷 네트워크 카드이다. speed와 duplex를 수동으로 설정하기 위해서는 우선 auto-negotiation 기능을 끄도록 하자.
이제 원하는 speed/duplex로 자신의 네트워크 카드를 설정하도록 하자. 아래 예는 100 Mb/s Full로 설정하는 방법이다.
원하는 대로 변경되었는지는 위의 ethtool eth0 명령을 통해 확인하도록 하자.
2010년 3월 28일 일요일
페도라 & 우분투 릴리즈 스케쥴
Fedora 13 Schedule
| 2010-02-18 | Branch Fedora 13 from Rawhide |
| 2010-02-16 | Alpha Freeze |
| Software String Freeze | |
| 2010-03-09 | Alpha Release |
| 2010-03-16 | Software Translation Deadline |
| 2010-03-23 | Beta Freeze |
| 2010-04-06 | Beta Release |
| 2010-04-27 | Final Freeze |
| 2010-04-29 | Compose Release Candidate |
| 2010-05-11 | Fedora 13 Final Release |
Ubuntu 10.04 Schedule
| December 10th, 2009 | Alpha 1 release |
| January 14th, 2010 | Alpha 2 release |
| February 25th, 2010 | Alpha 3 release |
| March 18th, 2010 | Beta1 release |
| April 8th, 2010 | Beta2 release |
| April 22nd, 2010 | Release Candidate |
| April 29th, 2010 | Final release of Ubuntu 10.04 LTS |
2010년 3월 25일 목요일
자동으로 미소 한방 날려보자...
메일을 쓰거나 메신저로 채팅할 때 키보드 타이핑 없이 미소를 날려보낼 수 있는 방법이 없을까? 여기서 소개하는 Auto smiley를 사용하면 가능하다. 사용법은 간단하다. 맥북에서 실행해 놓고 메일이나 메신저로 채팅하면서 원할 때 iSight에 미소를 날리면 끝. 프로그램이 알아서 최상위 어플리케이션에 :) 캐릭터를 보낸다.
더이상 간단할 수 있을까?
다운로드
2010년 3월 24일 수요일
사면 후 복귀하리라는 기대를 조금도 저버리지 않는군..

보유하고 있는 주식이 상장폐지 심사 대상기업으로 선정되어 주식 매매 금지처분을 받은 작금의 현실에 망연자실하고 있을 때 또 하나의 속보가 글쓴이를 울리게 하는 군요. 딱히 샘숭이란 기업이 내가 밥 먹고 사는데 크게 지장은 없지만 돈이 겁나게 많으면 법 위에 설수 있다는 사실을 경험하게 해준 아주 훌륭한 기업이라 앞으로 대리점 앞을 지날 때 침 한번 뱉어주는 소심한 1인 시위를 해야 할까봐요.
구글 리더로 RSS 구독하고 있는 미디어들이 아주 난리네요. 샘숭이란 회사가 어느샌가 그 나와바리를 글로벌하게 맞짱뜨는 회사란 걸 새삼 깨닫게 되는군요.
Gizmo - Disgraced Ex-Chairman Returns To Samsung [Samsung]
SECRET OF KOREA - 이건희, '나는 IOC명예를 실추시키지 않았다' 편지 - 기가 막힌다
Engadget - Lee Kun-hee returns as chief of Samsung Electronics
WSJ - Samsung Ex-Chief to Return
BBC - Profile: Lee Kun-hee
2010년 3월 23일 화요일
어떤 기업 혹은 단체에서 리눅스를 사용하나?
그렇다면 기업, 특히 글로벌 기업들 - 국내에서 데스크탑 용도로 사용하는 기업은 없으리라 생각한다 -은 리눅스 운영체제를 어떻게 사용하고 있는지 소개하는 기사가 있어 소개해 본다. 원문은 여기에서 확인할 수 있다.
포스트가 길어질 수 있기 때문에 국내에 많이 알려진 기업들을 그 쓰임새를 위주로 소개해보도록 한다.
Novell
노벨은 SUSE 리눅스를 개발 및 판매하고 있기때문에 자사 직원들의 데스크탑 운영체제로 리눅스를 사용하도록 하는 조치는 어찌보면 당연한 듯하다. 2006년 노벨은 자사 데스크탑 운영체제를 윈도우에서 리눅스로 변경할 것이라 선언하였다. 그해 4월 5000대 중 절반 정도를 이전하였으며 그 해 11월 경에는 80%를 웃돌것이라 하였다.

설명이 필요없는 기업이리라. 물론 한국에서는 비지니스가 생각만큼 쉽게 이루어지지 않고 있지만... 많은 이들이 알고 있겠지만 구글은 자사의 검색 서비스를 위해 리눅스 운영체제를 사용한다. 알려진 바에 의하면 Ubuntu 배포판을 변형하여 사용하고 있으며 내부에서는 "Goobuntu"로 통한다고 한다. 또한 구글의 개발자들은 자신의 데스크탑 운영체제로 리눅스를 사용한다.
IBM

MS와의 악연으로 PC 시장의 헤게모니를 빼앗긴 후 절치부심한 끝에 현재 IBM은 솔루션, 서비스 제공 회사로 거듭나고 있다. IBM은 자사에서 서버뿐 아니라 데스크탑용으로 리눅스를 사용하고 있으며 2006년에는 이른바 "IBM support Linux 100%"라는 TV 광고를 내보내고 있다. 광고는 여기에서 확인할 수 있다. 또한 지난 10년간 IBM은 리눅스 커뮤니티에 재정적인 면이나 기술적인 면으로 많은 지원을 아끼지 않았다.
Panasonic
파나소닉은 리눅스를 자사의 보이스메일 시스템에 사용한다. 파나소닉은 자신들이 원하는 것을 구현할 수 있고 지불해야 하는 라이센스 비용때문에 리눅스로 교체하였다고 한다. 국내와는 다르게 리눅스 개발자를 구하기 쉬울테니 아무래도 MS에 지불해야 하는 라이센스 비용이 큰 부분을 차지하였을 것이다.
Virgin America

CrunchGear에 따르면 미국의 대표적인 저가 항공사인 버진 아메리카는 기내 엔터테인먼트 시스템인 "RED"에 Red Hat의 페도라를 사용한다고 한다. 미국에서 비행기 여행을 할 때 펭귄 마크를 볼 수 있는 행운이 있으려나?
Amazon

ZD Net에 따르면 온라인 서점으로 잘 알려진 아마존은 모든 사업 영역에서 리눅스를 사용한다고 한다. 기본적인 업무에서부터 자사의 데이터베이스까지 리눅스를 2000년도부터 사용하였으며 또 2001년 포스트를 통해서 리눅스로 변경하여 1천 7백만불의 비용을 절감할 수 있었다고 하였다. 2004년에 아마존은 전 세계에 9개의 유통 센터를 구축하였으며 총 면적은 4백만 평방피트라고 전했다. 그야말로 아마존에서는 리눅스가 발에 채인다고 할까요.
Peugeot
2007년 자동차 제조업체인 푸조는 20,000 카피 이상의 Novell Desktop Linux, 2,500 카피의 SuSe Linux Enterprise Server를 설치하였다고 발표하였다. 포스코의 사원수가 16,300명 정도(잡코리아 기업정보 - 포스코)이니 대충 짐작이 간다. 와우~~
Wikipedia
위키피디아는 2008년에 Red Hat의 Fedora에서 Ubuntu로 갈아탔단다. Ars Technica는 위키피디아의 400대 서버의 관리를 쉽게 하기 위해 우분투로 이전한다고 하였다. 배포판만 변경하였으니 전체 리눅스 사용자수에는 변화가 없을듯 하지만 우분투의 성장세는 괄목할만 하네요.
New York Stock Exchange
뉴욕 주식거래소의 리눅스 사용은 의외의 뉴스로 받아들여질 수 있다. 하지만 ComputerWorld.com이 ' how London's stock exchange was also "abandoning the failed Windows platform'라는 기사에서 뉴욕 주식거래소는 이미 리눅스를 주식거래 플랫폼 및 기타 영역에 도입하였으며 꽤 훌륭한 성능을 보여주고 있다고 보도하였다. InformationWeek는 2008년에 뉴욕 거래소가 사용하는 리눅스는 Red Hat Enterprise LInux라고 보도하였다.
최근에는 Computerworld Blog를 통해서도 도쿄 주식 거래소 또한 주식거래 플랫폼으로 Red Hat Enterprise LInux를 도입하였다고 전했다. 돈에 민감한 이들에게 운영체제 라이센스 비용이 아까웠나 봅니다.
Toyota Motor Sales

최근 리콜 사태로 어려움을 겪고 있는 토요타 자동차의 판매망 관리 시스템에 리눅스를 도입한다고 AAX.Net이 보도하였다. 이 시스템은 웹 기반 시스템이며 부품 발주, 보증 기간, 판매 등록 및 수리 등을 포함한 30여 가지의 업무를 처리한다. 30곳을 선정하여 진행한 시험 운영이 성공적으로 이루어졌기때문에 토요다는 1,200 곳의 판매소에 이 시스템을 도입할 것이라고 한다.
이제 리눅스를 업무용 데스크탑 운영체제로 사용하는 기업 혹은 단체가 점점 늘어나고 있다는 것이다. 물론 국내 주요 기업체는 전무하리라 생각하지만.. 개인적으로는 이들 기업 혹은 단체가 윈도우의 Active Directory를 리눅스 환경에서 어떻게 구현하였는지 자못 궁금하다. 혹시 아시는 분?
참조 : 리눅스를 사용하는 기업 혹은 단체가 얼마나 있는지 궁금하신 분은 여기를 참고하시기 바란다.
파이어폭스 3.6.2로 업데이트하자..

아래는 이번 3.6.2에서 개선된 점입니다.
Firefox 3.6.2 fixes the following issues found in previous versions of Firefox 3.6:
- Fixed a critical security issue that could potentially allow remote code execution (see bug 552216).
- Fixed several additional security issues.
- Fixed several stability issues.
2010년 3월 22일 월요일
[GNS3] HSRP로 네트워크 이중화하기 Part 2
[RNS] HSRP란 무엇인가? by iprize | 2010/03/14 22:33 1. HSRP(Cisco Hot Standby Router Protocol)란 무엇인가? HSRP(Hot Standby Router...
다중 HSRP 그룹 설정하기
Multigroup HSRP (MHSRP)는 HSRP의 확장판으로 라우터의 인터페이스가 하나 이상의 HSRP 그룹의 멤버가 된다. MHSRP는 Cisco IOS 버전 10.3 이상이 필요하며 Ethernet 인터페이스에 여러 개의 MAC 주소를 할당할 수 있는 라우터에서만 가능하다. 이들 라우터는 AGS, AGS+ 라우터와 Cisco 라우터 7000 시리즈이다.

위 그림에서 보면 라우터 A의 Ethernet 0 인터페이스는 그룹 1번에 속해있으며 라우터 B의 Ethernet 0 인터페이스는 그룹 1, 2, 3번에 속해있다. 라우터 C의 Ethernet 0 인터페이스는 그룹 2번에 속해있으며 라우터 D의 Ethernet 0 인터페이스는 그룹 3번에 속해 있다. 라우터 B가 그룹 1번과 2번의 활성 라우터로, 그룹 3번의 대기 라우터로 설정되어 있으며 라우터 D는 그룹 3번의 활성 라우터로 설정되어 있다. 라우터 D에 장애가 발생하면 라우터 B가 라우터 D가 하던 패킷 전송을 담당하게 되며 그룹 3번에 속한 사용자들은 계속해서 네트워크 사용할 수 있을 것이다.
MHSRP의 개념적인 부분을 알아보았다. 이제 실제 장비에서 어떻게 MHSRP가 설정되는지 알아보도록 하자. 본 포스트에서는 GNS3를 이용하여 MHSRP를 구현하였으며 3640, 7200 라우터 이미지를 사용하였다. 위에서 언급하였듯이 MHSRP는 7200 라우터에서 설정가능하기 때문에 라우터 B에는 7200 이미지를 사용하였다.
사용된 라우터 : 3640, 7200
사용 IOS : C3640-IK9O3S-M 12.4(8a), C7200-ADVIPSERVICESK9-M 12.4(2)T
네트워크 다이어그램

각 라우터의 Configuration은 아래와 같다.
라우터 A
라우터 Binterface FastEthernet0/0
ip address 10.19.100.10 255.255.255.0
standby 1 ip 10.19.100.1
standby 1 authentication tokyo
!
interface FastEthernet1/0
ip address 172.16.10.1 255.255.255.0
라우터 Cinterface FastEthernet0/0
ip address 172.16.10.2 255.255.255.0
!
interface Ethernet1/0
ip address 10.19.100.11 255.255.255.0
standby 1 ip 10.19.100.1
standby 1 priority 110
standby 1 preempt
standby 1 authentication tokyo
standby 2 ip 10.19.100.2
standby 2 priority 110
standby 2 preempt
standby 2 authentication seoul
standby 3 ip 10.19.100.3
standby 3 preempt
standby 3 authentication singapore
라우터 Dinterface FastEthernet0/0
ip address 10.19.100.12 255.255.255.0
standby 2 ip 10.19.100.2
standby 2 authentication seoul!
interface FastEthernet1/0
ip address 172.16.10.3 255.255.255.0
interface FastEthernet0/0
ip address 10.19.100.13 255.255.255.0
standby 3 ip 10.19.100.3
standby 3 priority 110
standby 3 preempt
standby 3 authentication singapore
!
interface FastEthernet1/0
ip address 172.16.10.4 255.255.255.0
위 Configuration을 통해서 알 수 있듯이 모두 3개의 HSRP 그룹이 생성되었다. 각 그룹의 활성 및 대기 라우터는 아래와 같다.
Group 1
Active router : 라우터 B (우선순위 110)
Standby router : 라우터 A (우선순위 100;기본값)
가상 IP : 10.19.100.1
가상 MAC : 0000.0c07.ac01
Group 2
Active router : 라우터 B (우선순위 110)
Standby router : 라우터 C (우선순위 100;기본값)
가상 IP : 10.19.100.2
가상 MAC : 0000.0c07.ac02
Group 3
Active router : 라우터 D (우선순위 110)
Standby router : 라우터 B (우선순위 100;기본값)
가상 IP : 10.19.100.3
가상 MAC : 0000.0c07.ac03
위 사항은 privilege 모드에서 show standby 명령어를 통해 알 수 있다.
Interface Tracking
HSRP와 MHSRP를 설정할 때 라우터의 인터페이스의 상태에 따라 우선순위를 조정하는 Tracking을 적용할 수 있다. Tracking이 적용된 인터페이스에 장애가 발생할 경우 라우터의 우선순위가 낮아진다. Tracking을 적용하기 위해서는 standby track 인터페이스 명령어를 사용한다. Ethernet 0 인터페이스에 serial 0 인터페이스를 tracking하도록 아래와 같이 설정할 경우 FastEthernet 0/0 인터페이스에 장애가 발생할 경우 라우터 B의 우선 순위는 기본값이 10만큼 낮아질 것이다.
interface Ethernet1/0
ip address 10.19.100.11 255.255.255.0standby 1 ip 10.19.100.1
standby 1 preempt
standby 1 priority 110
standby track FastEthernet0/0
Load Sharing
네트워크 부하 분산을 위해 HSRP나 MHSRP를 사용할 수 있다. 로컬 네트워크 상에서 절반 가량의 호스트를 라우터 A를 사용하고 나머지 절반을 라우터 B를 사용하도록 설정할 수 있다. 이렇게 2개의 HSRP 그룹을 생성하여 네트워크 부하를 분산시키면 하나의 라우터에 장애가 발생하더라도 활성 라우터 선출 과정을 거쳐 나머지 라우터가 활성 라우터가 되어 패킷 전송을 담당하게 될 것이다. 이를 위해는 Standby preempt 명령어가 반드시 적용되어야 한다.

--------------------------------
참고 자료
1. Using HSRP for Fault-Tolerant IP Routing - Configuring Multiple Hot Standby Groups
2010년 3월 21일 일요일
[RNS] EtherChannel이란 무엇인가?
EtherChannel이란 무엇인가?

EtherChannel은 다수 개의 물리적 이더넷 링크를 하나의 논리적 채널로 묶는 기술이다. 이는 채널들의 트래픽 공유뿐 아니라 하나 이상의 링크에 장애가 발생하여도 redundancy를 제공하기도 한다. Fast EtherChannel은 UPT나 싱글 혹은 멀티모드 광케이블을 이용한 랜 스위치, 라우터, 서버 및 클라이언트를 서로 연결하기 위해 사용될 수 있다.
EtherChannel의 제약 사항은 그룹 내의 물리적 포트들이 동일한 스위치 상에 존재해야 한다는 점이다. Nortel의 SMLT 프로토콜이 두 개의 스위치에 물리적 포트를 묶을 수 있게하여 제약 사항을 극복하였으며 Cisco의 가상 스위칭 시스템의 Multichassis Etherchannel (MEC)가 가상의 스위치를 형성하는 수 개의 샤시 상의 포트를 하나로 묶어 주는 방법을 제공한다. 또한 Cisco의 Cross-Stack EtherChannel 기법도 스택을 형성한 다수의 스위치 상의 포트를 묶어주는 방법을 제공한다.
EtherChannel은 그룹의 모든 포트를 네트워크 트래픽이 이동할 수 있는 통로로 제공한다. Cisco 전용 해시 알고리즘을 이용하여 포트를 선택하며 진원지 혹은 목적지의 MAC 주소, IP 주소 혹은 TCP/UDP 포트번호를 가지고 선택된다. 해시 알고리즘은 0에서 7까지 수를 산출해 내며 아래 표는 2개에서 8개의 포트를 사용할 경우 로드 밸런스 비율을 보여준다. 이상적인 상황에서 2, 4, 8 포트는 균일한 로드 밸런싱이 형성되며 그 외 포트는 비균일 로드 밸런싱이 형성된다.
| Number of Ports | Load Balancing |
|---|---|
| 8 | 1:1:1:1:1:1:1:1 |
| 7 | 2:1:1:1:1:1:1 |
| 6 | 2:2:1:1:1:1 |
| 5 | 2:2:2:1:1 |
| 4 | 2:2:2:2 |
| 3 | 3:3:2 |
| 2 | 4:4 |
링크 하나에 장애가 발생할 경우 EtherChannel은 자동으로 나머지 링크에 트래픽을 분산시킨다. 이 자동 복구 기능은 1초 미만에 이루어지며 네트워크 장비들이나 사용자에게는 인지되지 않는다.
EtherChannel과 함께 Spanning Tree Protocol이 함께 사용될 수 있다. STP는 모든 링크를 하나의 링크로 다루며 BPDU를 이들 링크 중 한 곳을 통해서만 전송된다. EtherChannel을 사용하지 않으면 STP는 스위치를 연결하는 링크들 중 하나가 끊어지기 전까지 중복되는 링크를 정지시킬 것이다.
EtherChannel은 VLAN trunk로 설정될 수도 있다. EtherChannel 중 하나의 링크가 VLAN trunk로 설정되면 나머지 전체 EtherChannel도 VLAN trunk로 동작할 것이다. Cisco ISL, VTP, 그리고 IEEE 802.1Q가 EtherChannel과 호환된다.
---------------------------------
참고자료
1. Understanding EtherChannel Load Balancing and Redundancy on Catalyst Switches
2010년 3월 17일 수요일
[GNS3] HSRP로 네트워크 이중화하기 Part 1
1. HSRP(Cisco Hot Standby Router Protocol)란 무엇인가? HSRP(Hot Standby Router Protocol)은 네트워크를 중단 없이 지속적으로 운영하기...
앞서 HSRP에 대해 개념적인 부분을 알아보았다. HSRP는 Cisco 전용 프로토콜이기 때문에 Cisco 환경에서만 설정이 가능하다. 자신의 네트워크 환경이 이기종 혼합 구성으로 되어 있다면 Virtual Router Redundancy Protocol (VRRP)가 대안이될 수있을 것이다.
이제 GNS3 환경에서 HSRP를 설정해보자.
단일 HSRP 그룹 설정
본 섹션에서는 2대의 라우터, 3대의 PC, 그리고 2대의 스위치를 이용하여 네트워크를 구성하였다. 본 구성에 사용된 IOS는 C3640-IK903S-M 12.4(8a)이며 PC를 에뮬레이트하기 위해서도 이 IOS 이미지를 사용하였다. 또한 스위치는 GNS3의 기본 Ethernet Switch를 사용하였으니 참고하기 바란다.

GNS3를 실행한 후 위 토폴로지와 같이 가상 장비들을 배치하도록 하자. PC1과 PC2의 기본 게이트웨이 주소는 가상 라우터의 IP 주소인 192.168.10.10을 사용한다. 이제 장비들에 콘솔로 접속하여 명령어를 입력하도록 하자.
라우터 HSRP_R1에 접속한다.
Router>라우터 HSRP_R2에 접속한다.
Router>en
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#hostname HSRP_R1
HSRP_R1(config)#interface fastEthernet 0/0
HSRP_R1(config-if)#ip address 192.168.10.1 255.255.255.0
HSRP_R1(config-if)#standby 1 ip 192.168.10.10
HSRP_R1(config-if)#standby 1 preempt
HSRP_R1(config-if)#standby 1 priority 110
HSRP_R1(config-if)#standby 1 authentication smith
HSRP_R1(config-if)#standby 1 timers 5 15
HSRP_R1(config-if)#interface fastEthernet 1/0
HSRP_R1(config-if)#ip address 172.16.10.1 255.255.255.0
HSRP_R1(config-if)#^Z
HSRP_R1#wr
Router>
Router>en
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#hostname HSRP_R2
HSRP_R2(config)#interface fastEthernet 0/0
HSRP_R2(config-if)#ip address 192.168.10.2 255.255.255.0
HSRP_R2(config-if)#standby 1 ip 192.168.10.10
HSRP_R2(config-if)#standby 1 preempt
HSRP_R2(config-if)#standby 1 authentication smith
HSRP_R2(config-if)#standby 1 timers 5 15
HSRP_R2(config-if)#interface fastEthernet 1/0
HSRP_R2(config-if)#ip address 172.16.10.2 255.255.255.0
HSRP_R2(config-if)#^Z
HSRP_R2#wr
PC1과 PC2는 기본 게이트웨이로 가상 라우터를 사용하도록 설정한다. 우선 PC1에 접속하여 설정하자.
Router>en
Router#conf t
Router(config)#hostname PC1
PC1(confg)#interface fastEthernet 0/0
PC1(config-if)#ip address 192.168.10.100 255.255.255.0
PC1(config-if)#^Z
PC1#ip route 0.0.0.0 0.0.0.0 192.168.10.10
PC1#wr
PC2는 아래와 같이 설정한다.
PC3는 172.16.10.0 네트워크 상에 존재하며 PC1 혹은 PC2에서 네트워크 연결을 점검하기 위한 대상 호스트가 될 것이다. 콘솔로 접속하여 아래와 같이 설정한다.Router>en
Router#conf t
Router(config)#hostname PC2
PC2(confg)#interface fastEthernet 0/0
PC2(config-if)#ip address 192.168.10.101 255.255.255.0
PC2(config-if)#^Z
PC2#ip route 0.0.0.0 0.0.0.0 192.168.10.10
PC2#wr
Router>en
Router#conf t
Router(config)#hostname PC3
PC3(confg)#interface fastEthernet 0/0
PC3(config-if)#ip address 172.16.10.100 255.255.255.0
PC3(config-if)#^Z
PC3#ip route 0.0.0.0 0.0.0.0 172.16.10.2
PC3#wr
HSRP 설정 점검
여기까지 라우터에서 단일 HSRP 그룹 설정이 끝났다. 정리하면 두 대의 라우터가 가상 IP 주소 (192.168.10.10)을 사용하여 Redundancy를 제공하기 때문에 이 중 하나에 문제가 발생하여도 PC1이나 PC2의 기본 게이트웨이를 재설정하지 않아도 계속 네트워크를 사용할 수 있다.
HSRP_R2에 콘솔 접속하여 아래 명령어를 입력하면 현재 HSRP 상태를 볼 수 있다.
HSRP_R2#sh standby
FastEthernet0/0 - Group 1
State is Standby
4 state changes, last state change 00:00:01
Virtual IP address is 192.168.10.10 - 가상 IP 주소가 192.168.10.10 임을 알 수 있다.
Active virtual MAC address is 0000.0c07.ac01 - 가상 MAC 주소를 확인할 수 있다.
Local virtual MAC address is 0000.0c07.ac01 (v1 default)
Hello time 5 sec, hold time 15 sec
Next hello sent in 3.240 secs
Authentication text "smith"
Preemption enabled
Active router is 192.168.10.1, priority 110 (expires in 13.248 sec) - 우선순위기 110인 HSRP_R1 라우터가 활성 라우터 상태이다.
Standby router is local - 우리가 접속한 HSRP_R2 라우터가 대기 상태임을 알 수 있다.
Priority 100 (configured 100)
IP redundancy name is "hsrp-Fa0/0-1" (default)
HSRP_R2#
HSRP_R1에 콘솔 접속하여 위 명령어를 입력하여 라우터의 HSRP 상태를 직접 확인해보도록 한다. 아마 비슷한 결과를 얻을 수 있을 것이다. PC1에서 PC3로 icmp 패킷을 10만개정도 보낸 상태에서 활성 라우터인 HSRP_R1을 정지시키면 ping 동작이 잠시 멈춘 후 다시 진행되는 것을 볼 수 있을 것이다. 이는 HSRP 그룹 내에 변동이 발생하여 preemption 과정이 진행되었기 때문이다. 직접 확인해보도록 하자.
2010년 3월 16일 화요일
2010년 3월 14일 일요일
Fedora 12에서 13 Alpha로 업그레이드 하기..
코드 네임을 "Goddard"로 사용하는 Fedora 13 알파 버전이 어제(3월 10일) 릴리즈되었네요. 개인적으로는 테스트 용도로 PC에 Fed...

리눅스 배포판이 점점 발달하여 패키지 관리도 더불어 편해지고 있습니다. Fedora도 그 중 하나라고 말할 수 있습니다. 최근 Fedora 13 버전이 발표되어 Alpha 상태에서 테스트가 진행되고 있는데, 본인도 함께 테스트에 참여하고자 기존 Fedora 12를 업그레이드 해보고자 합니다, 라고 쓰지만 최신 버전 집착증때문이라고...휘리릭..
1. 업그레이드 준비
업그레이드는 루트 권한으로 진행되어야 하니 터미널을 열고 루트로 로그인하자.
su
2. Fedora 13으로 업그레이드
업그레이드를 진행하기 전에 시스템을 최신 업데이트 상태로 만들자.
yum -y update # y 옵션은 모든 질문에 yes로 대답하는 옵션이다.
yum 캐시를 지우자.
패키지 'preupgrade'를 설치한다.yum clean all
설치가 완료된 후에 터미널에서 preupgrade 혹은 preupgrade-cli를 실행한다. preupgrade는 데스크탑에서 사용할 수 있는 GUI 버전이며 preupgrade-cli는 서버에서 사용할 수 있는 명령어 기반이다. preupgrade-cli를 실행할 경우 업그레이드 가능한 릴리즈를 보여준다.yum install preupgrade

'preupgrade' 초기화면

'preupgrade-cli' 진행화면
모든 업그레이드가 완료되면 재부팅을 한다.
reboot
Note : preupgrade 패키지가 동작하지 않을 경우에는 터미널에서 아래 명령어로 업그레이드를 시도해보기 바란다.
i386:
x86_64:rpm -Uvh ftp://download.fedora.redhat.com/pub/fedora/linux/releases/test/13-Alpha/Fedora/i386/os/Packages/fedora-release-*.noarch.rpm && yum upgrade
rpm -Uvh ftp://download.fedora.redhat.com/pub/fedora/linux/releases/test/13-Alpha/Fedora/x86_64/os/Packages/fedora-release-*.noarch.rpm && yum upgrade
[RNS] HSRP란 무엇인가?

1. HSRP(Cisco Hot Standby Router Protocol)란 무엇인가?
HSRP(Hot Standby Router Protocol)은 네트워크를 중단 없이 지속적으로 운영하기 위해 고안된 기술이다. 즉 호스트 PC가 첫번째 홉 라우터인 디폴트 게이트웨이의 IP 주소에 접속하지 못하는 상황을 대비한 프로토콜이다. 이 프로토콜은 다중 접속, 멀티캐스트 혹은 브로드캐스트가 가능한 이더넷과 같은 네트워크에서 사용될 수 있도록 설계되었다. 이 프로토콜은 동적 라우팅 프로토콜을 대체하기 위해 개발된 것이 아니다.
로컬 네트워크 상에서 여러 라우터가 단일 가상 라우터로 동작할 때 이들을 HSRP 그룹 혹은 대기 그룹(Standby Group)이라고 한다. 그룹 내에서 한 개의 라우터가 호스트 PC가 보낸 패킷을 포워딩한다. 이를 활성 라우터(Active Router)라고 한다. 그 외 그룹 내의 라우터를 대기 라우터(Standby Router)라고 한다. 활성 라우터에 장애가 발생할 경우 대기 라우터가 활성 라우터를 대신하여 패킷을 포워딩할 것이다. 여러 대의 라우터에 HSRP 프로토콜이 적용되더라도 단 한개의 활성 라우터만이 패킷을 포워딩한다.
한 개의 로컬 네트워크에 여러개의 대기 그룹이 존재할 수 있으며 각 대기 그룹은 한 개의 가상 라우터를 에뮬레이트한다. 각 대기그룹에는 하나의 MAC 주소와 IP 주소가 할당되며 IP 주소는 로컬 네트워크에서 사용되는 서브넷에 포함되어야 하지만 라우터 인터페이스, 로컬 네트워크 상의 호스트, 그리고 다른 HSRP 그룹에 할당된 가상 IP 주소와는 달라야 한다.
2. 용어 및 메시지
HSRP는 그룹 내 라우터들 중 활성 라우터를 선출하기 위해 우선순위를 이용한다. 활성 라우터로 설정하기 위해서는 HSRP 그룹 내의 라우터들 중 가장 높은 우선순위를 부여하여야 한다. 우선순위 기본 값은 100이기 때문에 활성 라우터로 선출한 라우터에 이 값보다 높은 순위를 부여한다.
HSRP는 그룹 내 라우터끼리 우선순위를 교환하기 위해 멀티캐스트 메시지를 보낸다. 활성 라우터가 설정된 시간 동안 Hello 메시지를 보내지 못할 경우 다음 번 우선 순위 값을 가진 대기 라우터가 활성 라우터가 된다. HSRP에서 사용되는 용어와 라우터가 교환하는 메시지는 아래와 같다.
- 활성 라우터(Active Router) - 그룹 내에서 패킷을 포워딩하는 라우터
- 대기 라우터(Standby Router) - 첫번째 예비 라우터
- 대기 그룹(Standby Group) - HSRP 그룹 내에 속한 수 개의 라우터
- Hello 타임 - 그룹 내 라우터에서 받는 연속된 HSRP Hello 메시지의 시간 간격
- Hold 타임 - Hello 메시지를 받은 후 해당 라우터에 장애가 발생한 것으로 간주하기 까지의 경과 시간
- Hello - Hello 메시지는 다른 HSRP 라우터에게 HSRP 우선순위 및 상태 정보를 전달한다. 기본값으로 매 3초마다 Hello 메시지를 송신한다.
- Coup - 대기 라우터가 활성 라우터 역할을 맡게 되면 Coup 메시지를 보낸다.
- Resign - 활성 라우터가 셧다운되기 전이나 더 높은 HSRP 우선순위를 가진 라우터가 Hello 메시지를 보내면 Resign 메시지를 보낸다.
3. 인터페이스 상태
• Active
• Standby
• Speak and Listening
• Listening
4. 타이머
각 라우터들은 Active 타이머, Standby 타이머, Hello 타이머 등 3개의 타이머를 관리한다.
• Active 타이머는 활성 라우터의 모니터링에 사용된다. Active 타이머는 활성 라우터로부터 Hello 메시지가 도달하면 바로 시작된다.
• Standby 타이머는 대기 라우터의 모니터링에 사용된다. Standby 타이머는 대기 라우터로부터 Hello 메시지가 도달하면 바로 시작된다.
• Hello 타이머는 Hello 시간이 경과되기 전에 만료된다. 라우터가 Speak, Standby, 또는 Active 상태라면 Hello 타이머가 만료되기 전에 Hello 메시지를 발생하여야 한다.
5. 특징
Preemption
HSRP Preemption은 높은 우선순위를 가진 라우터가 바로 활성 라우터가 될 수 있도록 하는 기능이다. 우선순위는 관리자가 설정한 priority 값과 IP 주소로 결정되며 큰 수치가 높은 우선순위를 갖는다.
높은 우선순위를 가진 라우터가 낮은 우선순위의 라우터를 대체할 때 coup 메시지를 보내며 낮은 우선순위의 활성 라우터는 coup 메시지를 받거나 더 높은 우선순위의 라우터가 보낸 Hello 메시지를 수신하면 speak 상태로 전환하며 resign 메시지를 보낸다.
Preempt delay
preempt delay는 설정된 시간 동안 활성 라우터 선출을 지연시켜 활성 라우터가 새로 선출되기 전에 다른 라우터들이 라우팅 테이블을 구축할 수 있도록 하는 기능이다.
Cisco IOS 12.0(9) 이전 버전까지는 라우터가 재부팅할 때 preempt delay가 시작되지만 12.0(9) 버전에서는 preemption이 처음 시도될 때 시작된다.
Interface Tracking
인터페이스를 지정하여 해당 인터페이스에 장애가 발생할 경우 HSRP 프로세스가 HSRP의 우선 순위를 변경할 수 있도록 한다. 지정된 인터페이스의 line protocol이 다운되면 라우터의 HSRP 우선순위가 낮아져 그룹 내 다른 라우터가 활성라우터가 된다.
설정된 인터페이스가 여러 개이며 이들 인터페이스가 다운될 경우 우선 순위는 반복해서 감소된다. 감소 수치가 지정되었을 경우 인터페이스가 다운되었을 때 지정된 수치만큼 감소되며 다운된 인터페이스 수만큼 반복되어 감소된다. 수치를 지정하지 않을 경우에는 감소 수치는 10이며 역시 반복적으로 감소된다.
다중 HSRP 그룹
다중 HSRP 그룹(Multiple HSRP Group, MHSRP)은 Cisco IOS 10.3에서 도입되었다. 여러 네트워크 상에서 Redundancy와 load-sharing 기능을 제공한다. 간단히 설명하면 라우터가 한 HSRP 그룹 내에서 활성 라우터로서 패킷을 포워딩하면서 동시에 다른 HSRP 그룹 내에서는 대기 혹은 listen 상태가 될 수 있다.
MAC 주소 설정
Advanced Peer-to-Peer Netwoking(APPN)와 같은 프로토콜은 라우팅을 하는 게이트웨이를 찾기 위해 MAC 주소를 사용한다. 이 경우에 standby mac-address 명령어를 이용하여 MAC 주소를 지정할 수 있다. 실제 명령어는 standby [group] mac−address mac−address 이며 토큰링 인터페이스에는 사용할 수 없다.
Syslog 지원
HSRP의 Syslog에 대한 지원은 Cisco IOS 11.3에 추가되었다. syslog 서버에 활성 및 대기 라우터의 로그 저장 및 추적을 효율적으로 할 수 있게되었다.
6. 동작 매커니즘

위 그림에서 가상 라우터의 MAC 주소는 0000.0c07.ac01이다. HSRP가 설정될 때 라우터에는 다음의 MAC 주소가 할당된다. 이때 토큰링 네트워크는 제외이다. 토큰링 네트워크에서는 functional address를 사용한다.
0000.0c07.ac** (**은 HSRP의 그룹 번호이다)
192.1.1.0 네트워크 상의 호스트를 설정할 때 라우터 A의 IP 주소 대신 가상 라우터의 IP 주소를 기본 게이트웨이로 입력한다. Host A가 Host B로 패킷을 보낼 때는 가상 라우터의 MAC 주소로 패킷을 보낸다.
위 그림에서는 라우터 A가 활성 라우터이다. 가상 라우터의 IP 주소와 MAC 주소가 설정되어 있으며 가상 라우터로 보내진 모든 패킷은 라우터 A의 인터페이스를 거쳐 Singapore 네트워크로 보내진다. 대기 라우터인 라우터 B도 가상 라우터의 IP 주소와 MAC 주소가 설정되어 있으며 라우터 A가 패킷 전송을 못하게 될 경우 라우팅 프로토콜이 재정비되며 라우터 B가 라우터 A의 역할을 맡게 되어 활성 라우터가 된다. 즉, 라우터 B가 가상 IP 주소와 MAC 주소에 응답한다. Host A는 Host B에 패킷을 보내기 위해 가상 라우터의 IP 주소를 계속해서 사용하며 라우터 B가 이를 Seoul 네트워크를 거쳐 Singapore 네트워크로 보낸다. 라우터가 다시 동작할 때까지 HSRP 설정을 통해서 라우터 B가 Tokyo 네트워크 상의 사용자에게 Singapore 네트워크까지 연결을 보장한다. 라우터 B는 활성 라우터 역할을 하면서 동시에 Tokyo 네트워크와 Seoul 네트워크 사이의 패킷 전달을 계속 수행할 것이다.
호스트가 ARP 프록시를 사용하도록 설정되어 있어도 HSRP를 사용할 수 있다. 활성 HSRP 라우터가 로컬 네트워크 상에 존재하지 않는 호스트의 ARP 요청을 받을 경우 라우터는 가상 라우터의 MAC 주소로 응답한다. 활성 라우터에 장애가 발생하거나 네트워크가 다운되었을 경우 활성 라우터로 선출되는 라우터가 가상 라우터로 보내지는 패킷을 받아 목적지로 전달한다.
--------------------------------
참고 자료
1. RFC 2281 - http://tools.ietf.org/html/rfc2281
2. Cisco.com - Using HSRP for Fault-Tolerant IP Routing
3. Aaron’s Worthless Words - Running HSRP for Availability
2010년 3월 11일 목요일
Fedora 13 Alpha 릴리즈

코드 네임을 "Goddard"로 사용하는 Fedora 13 알파 버전이 어제(3월 10일) 릴리즈되었네요. 개인적으로는 테스트 용도로 PC에 Fedora 12를 설치하여 사용하고 있습니다.
엔드 유저에게 유용한 기능은 아래와 같습니다.
- Automatic print driver installation. USB 프린터 연결시 자동으로 드라이버 설치
- Automatic installation of language packs. 사용자 환경을 감지하여 언어팩 다운로드 및 자동 설치
- Redesigned user management interface. 사용자 계정 관리 인터페이스 전면 개정
- Color management. 색 관리 시스템
- NetworkManager improvements include CLI. 네트워크 매니저 개선. 명령행 네트워크 관리 가능
- Experimental 3D extended to free Nouveau driver for NVidia
cards. NVidia 카드 Nouveau 드라이버 포함
자세한 사항은 Fedora 사이트나 https://fedoraproject.org/get-prerelease에서 확인 가능합니다.
2010년 3월 10일 수요일
[GNS3] SPAN을 이용하여 네트워크 패킷을 감시하자!!!

여러 가지 이유로 인해서 네트워크를 감시해야한다는 사실은 굳이 말하지 않아도 될 듯하다. 네트워크를 감시하는 방법은 여러가지가 있지만 - 보안 전문가가 아닌 관계로 감시하는 방법은 구글링을 통해 알아보기 바란다 - 본 포스트에서 스위치 SPAN (Switched Port Analyzer) 포트를 이용한 패킷 모니터링에 대해 알아보도록 한다.
SPAN에 대한 간단한 소개
일반적인 허브는 패킷을 특정 포트에서 수신할 경우 해당 포트를 제외한 전체 포트에 패킷을 전송한다. 하지만 스위치는 MAC 주소로 이루어진 레이어 2 포워딩 테이블을 구축하며 이를 참고하여 패킷을 해당 포트로 직접 전송한다. 아래 그림을 참고하면 허브와 스위치의 패킷 전달 방법을 쉽게 이해할 수 있을 것이다.

허브 네트워크 환경에서는 패킷이 연결된 모든 호스트에 전달된다.

스위칭 네트워크 환경에서 패킷은 포워딩 테이블을 참조하여 직접 해당 포트에 전달된다.

Host A가 보내는 모든 패킷의 복사본을 인위적으로 Monitoring Host로 보내지도록 설정할 수 있다. 이때 Host A가 접속되어 있는 포트를 SPAN 포트라고 한다.
시스템 환경
OS : Fedora 12
Cisco IOS : C3640-IK9O3S-M v12.3
Packet Capture Software : Wireshark v1.2.6
시작하기

GNS3를 실행하여 새 프로젝트를 생성한 후 위 다이어그램과 같이 가상 장비들을 배치한다. 본 프로젝트에서 사용되는 PC는 라우터 이미지를 이용한 심볼을 새로 생성하여 사용하였다. 추가하는 방법은 [GNS3] 토폴로지에 PC 추가하기을 참고하기 바란다. 그리고 SW0는 라우터 3640 IOS 이미지를 이용하였으며 slot0에 NM-16ESW를 추가하였다. 기타 다른 가상 장비에도 3640 IOS 이미지를 이용하였다. 각 장비의 인터페이스는 Fast Ethernet을 지원하는 것이면 충분할 것이다.
자 이제 각 장비의 Configuration 방법을 살펴보도록 하자.
1. 라우터 R0 설정
VLAN100, 200을 생성하고 인터페이스 f0/0에는 encapsulation DOT1Q으로 서브인터페이스를 각각 생성한다.
VLAN 정보는 아래와 같다.
VLAN100
IP : 192.168.100.0/24
Default gateway : 192.168.100.1
VLAN200
IP : 192.168.200.0/24
Default gateway : 192.168.200.1Router Configuration은 아래와 같다.
R0(vlan)#vlan 100
VLAN 100 added:
Name: VLAN0100
R0(vlan)#vlan 200
VLAN 200 added:
Name: VLAN0200
R0(vlan)#apply
APPLY completed.
R0(vlan)#exit
APPLY completed.
Exiting....
R0#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R0(config)#interface f0/0
R0(config-if)#interface f0/0.100
R0(config-subif)#encapsulation dot1q 100
R0(config-subif)#ip address 192.168.100.1 255.255.255.0
R0(config-subif)#interface f0/0.200
R0(config-subif)#encapsulation dot1q 200
R0(config-subif)#ip address 192.168.200.1 255.255.255.0
R0(config-subif)#^Z
R0#wr
Building configuration...
[OK]
R0#
2. 스위치 SW0 설정
스위치 SW0에 접속하여 마찬가지로 VLAN을 생성한 후 PC가 연결된 포트에 VLAN을 할당한다. VLAN 할당은 아래와 같다.
C1 VLAN200 active Fa0/2
Switch Configuration은 아래와 같다.
SW0(vlan)#vlan 100
VLAN 100 added:
Name: VLAN0100
SW0(vlan)#vlan 200
VLAN 200 added:
Name: VLAN0200
SW0(vlan)#apply
APPLY completed.
SW0(vlan)#exit
APPLY completed.
Exiting....
SW0#conf t
Enter configuration commands, one per line. End with CNTL/Z.
SW0(config)#interface fa0/1
SW0(config-if)#switchport access vlan 100
SW0(config-if)#switchport mode access
SW0(config-if)#interface fa0/2
SW0(config-if)#switchport access vlan 200
SW0(config-if)#switchport mode access
SW0(config-if)#^Z
SW0#wr
3. 가상 PC 설정
본 포스트에서는 두 대의 가상 PC를 사용하며 서로 다른 VLAN에 할당한다. 위에서 언급했듯이 이번에는 라우터를 이용하여 PC를 에뮬레이트할 것이다. C0, C1에 콘솔로 연결하여 아래와 같이 설정하도록 한다.
C0#conf t
C0(config)#no ip routing
C0(config)#interface fa0/0
C0(config-if)#ip address 192.168.100.2 255.255.255.0C0(config-if)#no shutdown
C0(config-if)#exit
C0(config)#ip default-gateway 192.168.100.1C1#conf t
C1(config)#no ip routing
C1(config)#interface fa0/0
C1(config-if)#ip address 192.168.200.2 255.255.255.0C1(config-if)#no shutdown
C1(config-if)#exit
C1(config)#ip default-gateway 192.168.200.14. SPAN (Mirror) 포트 설정
3640 라우터의 제약으로 인해 SPAN 설정은 Port Monitoring만이 가능하다. Monitoring 방식으로는 Port Monitoring이외에 VLAN Monitoring, RSPAN을 이용한 VLAN Monitoring이 있으며 자세한 사항은 시스코 문서를 참고하기 바란다.
SW0을 콘솔 접속하여 설정하도록 하자.
SW0#monitor session 1 source interface fastethernet 0/1 - 14
1번 포트에서 14번 포트까지 모든 패킷을 캡쳐한다.
SW0#monitor session 1 destination interface fastethernet 0/15
캡쳐된 패킷을 15번 포트로 보낸다.
위에서 보듯이 SPAN 설정은 의외로 간단하다. 하지만 복잡한 구성의 스위칭 네트워크에서 RSPAN을 이용한 SPAN 설정은 까다로울 수 있다.
여기까지 SPAN 포트 설정은 완료되었다. 이제 패킷 캡쳐를 통하여 설정이 제대로 적용되었는지 확인해 보도록 하자.
5. Wireshark를 이용한 패킷 캡쳐
실재 환경에서는 Mirroring port에 PC를 연결하여 Wireshark과 같은 패킷 캡쳐 소프트웨어로 네트워크를 감시한다. 하지만 GNS3 환경에서는 Wireshark를 설정하여 인터페이스를 캡쳐할 수 있다. GNS3에서 Wireshark 설정하는 방법은 [GNS3] 그 외 기타 사항를 참조하기 바란다.
인터페이스 캡쳐를 위해 더미 터미널(SPAN)을 설치하도록 하자. 본 포스트에서는 라우터 이미지를 설정한 가상 PC를 추가하였지만 Cloud 등 기타 장비를 추가하여도 무방할 것이다. 참고로 더미 터미널에 IP 등을 세팅할 필요는 없다. 더미 터미널을 스위치 SW0의 fa0/15 포트에 연결하도록 한다. SPAN 터미널과 스위치 사이의 라인을 오른쪽 클릭한 후 Capture를 선택하면 Wireshark가 실행되며 실행과 동시에 캡쳐를 시작할 것이다.
Wireshark를 통해 패킷을 캡쳐하기 전에 C0 혹은 C1에서 디폴트 게이트웨이(라우터 R0의 인터페이스)로 icmp 패킷을 보내도록 한다.
Protocol [ip]:
Target IP address: 192.168.100.1
Repeat count [5]:
Datagam size [100]:
Timeout in seconds [2]:
Extended commands [n]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 1000, 100-byte ICMP Echos to 192.168.100.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/11/80 ms
Wireshark 창을 보면 C0(192.168.100.2)에서 라우터(192.168.100.1)로 보내지고(icmp request), 되돌아오는(icmp reply) 패킷을 찾을 수 있을 것이다. 위의 예에서는 정확하게 5쌍의 icmp request/reply 패킷을 볼 수 있다. 추가로 192.168.200.1 혹은 C1로 ping을 보내보면 Wireshark에서도 동시에 패킷을 볼 수 있을 것이다. (Ctrl+R을 눌러 화면을 갱신하도록 하자)

마치며..
이 글을 쓰고 있는 글쓴이는 은행 전산부에서 일하고 있다. 관계 법령으로 인해 Cisco 전화 통화 기록과 메신저 대화 기록을 일정 기간(10년) 동안 남겨야 한다. 이를 위해 관련 솔루션을 도입했으며 위에서 설명한 SPAN 포트가 사용되었다. 이 외 네트워크 감시 및 유사한 기능을 하는 솔루션 등이 SPAN 포트가 사용될 수 있을 것이다. Cisco에 의하면 SPAN 포트 설정으로 인해 스위치에 미치는 영향은 거의 없다고 한다. 그리고 Monitoring 방식(Port Monitoring, VLAN Monitoring, RSPAN Monitoring)은 장비에 따라 다르니 Cisco 사이트에서 관련 문서를 참조하기 바란다.
참고 자료
1. Catalyst Switched Port Analyzer (SPAN) Configuration Example
2010년 3월 9일 화요일
애플제품 연대기
포스트 제목이 너무 거창한 듯하네요. 1976년 4월 애플사에서 최초 개인용 컴퓨터인 Apple I을 시작으로 곧 출시할 iPad까지 애플제품을 전부 보여주는 동영상입니다. 중간에 보면 비운의 주인공인 뉴튼도 볼 수 있네요. 여담이지만 뉴튼을 처음 본 건 스티븐 시걸의 영화에서 입니다. 자료 전송을 위해 뉴튼을 사용하더군요.
최근에 개인적으로 아이들 교육용 기기 관점에서 iPad 등 타블렛 제품을 눈여겨 보고 있는데 iPad의 사용 패턴이 어떻게 발전될 지 궁금하네요.
2010년 3월 8일 월요일
GNS3 for Mac OSX 발표

GNS3 개발자가 이 OSX의 DMG 패키지를 빌드하기 위해 꽤 많이 고생한 듯하네요. GNS3 v0.7을 발표한 후 10여일이 지난 3월 6일에야 OSX의 DMG 패키지를 발표했습니다. 하지만 아직까지도 실험 버전 상태로 두었군요. 맥에서 GNS3를 사용하시는 분들은 참고할 사항이네요.
다운로드 페이지 : http://www.gns3.net/download
2010년 3월 7일 일요일
[GNS3] NAT overload (PAT) 설정해보자
NAT 또는 PAT는 인터넷에서 사용되는 공인 IP가 부족해지는 현상을 해결하기 위해서 발전되었다. IP v4의 주소의 수는 2의 32승으로 4,294,967,296개가 되지만 현재와 같이 인터넷이 점점 발달하고 팽창하고 있는 상황에서는 얼마가지 않아 부족해진다는 사실은 IT에 종사하는 분들이라면 익히 들어 뉴스도 아닐 것이다. 이 부족현상은 IP v6를 사용하면 해결이 된다고 하지만 여러가지 제약으로 인해 아직까지 그 진행 상황은 더딘편이다. 여기서 소개되는 NAT/PAT 기법도 IP v6로의 이전을 더디게 하는 여러 요인 중 하나일지도 모른다.
본 포스트에서는 GNS3를 이용하여 간단한 네트워크 토폴로지를 구성한 후 NAT(정확하게는 NAT overload[PAT])를 설정해 보기로 한다. 본 포스트와 함께 이전 포스트들도 함께 참고하시기 바란다.
[GNS3] 스위칭 환경 구성하기
[GNS3] 스위칭 환경 구성하기 2
[GNS3] 토폴로지에 PC 추가하기
이제 본론으로 들어가서 본 포스트에서 구성할 네트워크 구성은 아래와 같다.

Router 'Seoul'
IOS : Cisco 3600 Series
IP 주소 : 10.100.100.1 (f0/0), 192.168.1.130 (s1/0)
Router 'ISP'
IOS : Cisco 3600 Series
IP 주소 : 192.168.1.131 (s0/0)
C1 & C2
IP 주소 : 10.100.100.2 (C1), 10.100.100.3 (C2)
1. 가상 장비의 인터페이스에 IP 설정하기
GNS3를 실행한 후 위 다이어그램과 같이 토폴로지를 구성하여 모든 가상 장비를 구동시킨다. 다음으로는 라우터 seoul과 ISP의 각 인터페이스에 IP를 부여한다.
라우터 seoul에 콘솔 접속하여 IP 부여하기
Enter configuration commands, one per line. End with CNTL/Z.
seoul(config)#int fa0/0
seoul(config-if)#ip address 10.100.100.1 255.255.255.0
seoul(config-if)#no shutdown
seoul(config-if)#int s1/0
seoul(config-if)#ip address 192.168.1.130 255.255.255.254
seoul(config-if)#no shutdown
seoul(config-if)#^Z
seoul#wr
라우터 ISP에 콘솔 접속하여 IP 부여하기
Enter configuration commands, one per line. End with CNTL/Z.
ISP(config)#int s0/0
ISP(config-if)#ip address 192.168.1.131 255.255.255.254
ISP(config-if)#no shutdown
ISP(config-if)#^Z
ISP#wr
VPCS를 실행하여 C1, C2에 IP 설정하기
본 포스트에서 사설 IP는 10.100.100.x를 사용할 것이다. 그래서 C1, C2의 IP를 각각 10.100.100.2, 10.100.100.3으로 설정한다.
VPCS 1 >2
VPCS 2 >ip 10.100.100.3 10.100.100.1 24
VPCS 2 >
2. 라우터 seoul에 NAT overload 설정하기
NAT와 NAT overload(PAT)의 차이점은 PAT는 하나의 공인 IP로 수 개의 호스트를 서비스할 수 있다는 것이다. 이때 PAT(Port Address Translation)라는 이름에서 알 수 있듯이 포트를 이용하여 라우터는 내부 호스트를 구별한다. 라우터 seoul가 주소 변환을 담당하게 된다.
seoul(config)#int fa0/0
seoul(config-if)#ip nat inside
seoul(config-if)#int s1/0
seoul(config-if)#ip nat outside
seoul(config-if)#exit
seoul(config)#access-list 10 permit 10.100.100.0 0.0.0.255
seoul(config)#ip nat inside source list 10 int fa0/0 overload
seoul(config)#^Z
seoul#wr
3. 연결 확인 및 주소 변환 상태 보기
이제 NAT를 위한 기본적인 설정은 완료되었다. 이제 설정이 제대로 적용되고 주소 변환이 의도한 대로 이루어지는지 확인해보도록 하자.
가상 PC에서 ISP의 s0/0로 ping을 날려보자.
192.168.1.131 icmp_seq=1 time=10.832 ms
192.168.1.131 icmp_seq=2 time=11.686 ms
192.168.1.131 icmp_seq=3 time=12.864 ms
192.168.1.131 icmp_seq=4 time=9.316 ms
VPCS 1>2
VPCS 2>ping 192.168.1.131
192.168.1.131 icmp_seq=1 time=7.684 ms
192.168.1.131 icmp_seq=2 time=14.843 ms
192.168.1.131 icmp_seq=3 time=16.201 ms
192.168.1.131 icmp_seq=4 time=12.349 ms
VPCS 2>
라우터 seoul에 접속하여 enable 모드에서 아래 명령어를 입력하면 변환된 주소 리스트를 출력할 것이다.
Pro Inside global[footnote]An inside address seen from the outside[/footnote] Inside local[footnote]An actual address assigned to an inside host[/footnote] Outside local[footnote]An actual address assigned to an outside host[/footnote] Outside global[footnote]An outside address seen from the inside[/footnote]
icmp 192.168.1.130:21368 10.100.100.2:21368 192.168.1.131:21368 192.168.1.131:21368
icmp 192.168.1.130:17528 10.100.100.3:17528 192.168.1.131:17528 192.168.1.131:17528
seoul#
간단하게나마 NAT overload를 설정하는 방법을 살펴보았다. 하지만 실무에서는 위와 같이 간단한 구성으로 해결되는 경우가 드물며 훨씬 복잡한 네트워크에서 NAT를 구현해야 하지만 기본적인 개념은 크게 다르지 않을 것이다. NAT에 대해 더 자세히 알고자 할 경우에는 위키피디아[footnote]위키피디아 Network Address Translation (http://en.wikipedia.org/wiki/NAT)[/footnote]를 참고하기 바란다.
2010년 3월 5일 금요일
iPad 3월 12일 사전 주문 개시, 4월 3일 출시
하지만 Techcrunch.com에 따르면 4월 말경에는 호주, 캐나다, 프랑스, 독일, 이탈리아, 일본, 스페인, 스위스, 영국에서도 판매될 것이라고 합니다(http://techcrunch.com/2010/03/05/ipad-will-be-available-in-the-u-s-starting-on-april-3/). 4월 말경에 해당 국가에 가시는 분들은 구매할 수 있을 듯합니다.

신한은행 인터넷뱅킹 ezPlus for Mac의 공인인증서 가져오기 오류
얼마전 신한은행에 가서 락을 풀고 다시 내 맥북에서 인터넷 뱅킹을 사용하려고 시도했는데 공인인증서가 없어졌네..킁..
그래서 다시 인증서를 윈도우에서 내보내기로 해서 pfx 파일로 만들어 맥북으로 복사해왔다. 맥북의 ezPlus에서 인증서 가져오기를 시도해 보았다. 그런데 에러메세지를 띄우고 계속 실패하네..

그래서 골백번 시도하다 결국 신한은행 콜센터에 전화로 문의해서 드디어 해결책을 찾았네.. 이렇게 쉬울줄이야....
윈도우의 Program Files 디렉토리 밑의 NPKI 폴더를 통째로 복사해서 자신의 맥에 복사한다. 복사할 위치는 사용자 폴더>라이브러리>Preferences에 복사하면 정상적으로 공인인증서를 인식하네.

2010년 3월 4일 목요일
[GNS3] 스위칭 환경 구성하기 2
본 글에서는 스위칭 환경을 구축한 후 VLAN을 생성하여 라우터를 이용해 두개의 서로 다른 VLAN이 통신할 수 있도록 Trunk를 설정하는 것을 설명한다.
최종적으로 생성되는 토폴로지는 아래와 같다.

자 이제 시작해 보자.
1. 가상 장비 배치 및 연결
우선 Nodes Types에서 스위치, 라우터, 컴퓨터 등을 위 다이어그램에 맞게 배열한다. IOS 이미지 등록하는 법(http://iprize.textcube.com/284) 및 스위치 등록하는 법(http://iprize.textcube.com/255)은 본 설명에서는 다루지 않는다.
가상 장비들을 알맞게 배열한 후에는 장비들을 서로 연결하도록 한다.
라우터 R0의 FastEthernet0/0와 스위치 SW0의 FastEthernet0/0을, 컴퓨터 C0의 nio_udp포트를 SW0의 FastEthernet0/1, 컴퓨터 C1의 nio_udp포트를 SW0의 FastEthernet0/2와 연결한다. 컴퓨터의 nio_udp 포트 설정법 및 사용법은 http://iprize.textcube.com/247을 참조한다.
2. 가상 장비 설정 및 VLAN 구성
툴바에서 Start/Resume all IOS 버튼을 클릭하여 가상 장비들을 구동하도록 한다.
여기까지 기본적인 장비 배치는 끝났다. 스위치, 라우터에 접속하여
1. 인터페이스를 설정,
2. VLAN을 생성하고
3, 컴퓨터에 IP 어드레스를 등록하여 네트워크 연결을 점검하도록 한다.
본 글에서 2개의 VLAN(100, 200)을 생성하고 두 VLAN이 서로 통신할 수 있도록 라우터 R0과 스위치 SW0에 trunk를 생성할 것이다. VLAN 정보는 아래와 같다.
VLAN100
IP : 192.168.100.0/24
Default gateway : 192.168.100.1
VLAN200
IP : 192.168.200.0/24
Default gateway : 192.168.200.1
라우터 R0에 콘솔 연결하여 아래와 같이 설정하도록 한다.
Router>en
Router#vlan database
Router(vlan)#vlan 100
VLAN 100 added:
Name: VLAN0100
Router(vlan)#vlan 200
VLAN 200 added:
Name: VLAN0200
Router(vlan)#apply
APPLY completed.
Router(vlan)#exit
APPLY completed.
Exiting....
Router#config terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#interface fa0/0
Router(config-if)#interface fa0/0.100
Router(config-subif)#encapsulation dot1Q 100
Router(config-subif)#ip address 192.168.100.1 255.255.255.0
Router(config-subif)#interface fa0/0.200
Router(config-subif)#encapsulation dot1Q 200
Router(config-subif)#ip address 192.168.200.1 255.255.255.0
Router(config-subif)#^Z
Router#wr
Building configuration...
[OK]
Router#
스위치 SW0에 콘솔 연결하여 설정하도록 한다.
Router>en
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#hostname SW0
SW0(config)#interface fa0/0
SW0(config-if)#switchport mode trunk
SW0(config-if)#switchport trunk encapsulation dot1q
SW0(config-if)#^Z
SW0#vlan database
SW0(vlan)#vlan 100
VLAN 100 added:
Name: VLAN0100
SW0(vlan)#vlan 200
VLAN 200 added:
Name: VLAN0200
SW0(vlan)#apply
APPLY completed.
SW0(vlan)#exit
APPLY completed.
Exiting....
SW0#config terminal
Enter configuration commands, one per line. End with CNTL/Z.
SW0(config)#interface fa0/1
SW0(config-if)#switchport access vlan 100SW0(config-if)#switchport mode access
SW0(config)#interface fa0/2
SW0(config-if)#switchport access vlan 200
SW0(config-if)#switchport mode access
SW0(config-if)#^Z
SW0#wr
Building configuration...
[OK]
vpcs.exe를 실행하여 컴퓨터 C0, C1에 각각 IP 어드레스를 192.168.100.2, 192.168.200.2를 할당하도록 한다.
가상 컴퓨터 C0과 C1에서 서로 다른 VLAN 상에 있는 컴퓨터에 도달할 수 있는지 ping을 통해 테스트해본다.

2010년 3월 3일 수요일
[GNS3] 스위칭 환경 구성하기
GNS3에서는 안타깝지만 스위칭 에뮬레이션을 제공하지 않는다. 물론 Node Types 판넬을 보면 Ether Switch라는 노드가 있지만 콘솔로 접속하여 여러가지 설정을 변경할 수가 없다.

Configure 메뉴를 통해 스위치에서 설정할 수 있는 부분이 거의 없다. 포트 추가 정도.
스위치 환경을 만들기 위해서 NM-16ESW를 지원하는 라우터를 이용하여 스위치 에뮬레이션을 만들도록 한다.
본 글에서는 Router 3640을 이용하여 스위칭 환경을 구축하도록 한다.
우선 Cisco Router 3640의 이미지를 구하여 등록하도록 한다. 등록하는 방법은 http://iprize.textcube.com/284을 참조하기 바란다.
GNS3를 실행한 후 Nodes Types에서 Router c3600을 끌어다 놓은 후 오른쪽 클릭하여 Configure를 선택한다. R0을 선택하여 Slot 탭을 활성화한다.

이제 slot0에 NM-16ESW를 선택하여 OK 버튼을 클릭하자.
이로써 스위치를 에뮬레이션할 수 있는 기본적인 구성을 갖춰졌다. 라우터 아이콘과 혼동을 피하기 위해 심볼 매니저를 이용하여 스위치 아이콘을 Nodes Types에 추가하도록 하자.
Edit > Symbol Manager를 선택하여 심볼 매니저 창을 연다. 심볼 매니저 창의 왼쪽 Available symbols 리스트에서 ethernet_switch를 오른쪽 Customized nodes로 이동한 후 Name에는 Switch, Type에는 Router c3600을 선택하여 Apply를 클릭하면 'Switch' 노드가 생성된다.

OK를 클릭한 후 메인 창으로 돌아오면 Switch가 추가되어 있는 것을 볼 수 있다.

이제 스위치를 사용하고자 할 경우 Switch를 끌어다 놓은 후 Configure 창에서 Slot0에 NM-16ESW 인터페이스를 추가하기만 하면 된다.







