저 자 : 김 성 우 |
||||||||||||||||||||||||||||||||||||||||||
IP가 부족하다. 일반인들이 가정에서
PPP를 쓰거나 기업에서 웹 호스팅 서비스를 받는다든지 또는 요즘
각광받고 있는 SOHO(Small Office Home Office)환경에서 네트웍을
사용하고자 하는 리눅서들에게 하나의 IP는 여러 대의 컴퓨터를
사용하기에는 네트워킹의 제약사항으로 다가올 수밖에 없다. [그림 1. 네트웍 구성도] 그림 1은 실제로 응용되는 한 예를
보이고 있는 것이다. * 내부에서 사용 가능한 IP Address *
윈도우에서 하이텔(hoem.hitel.net)로 telnet을
사용하여 연결하고자 한다면 윈도용 telnet 클라이언트로 리눅스(peace.left.com)에
있는 계정으로 접속한 후에 리눅스에 내장된 telnet을 사용하여
외부에 있는 호스트인 하이텔로 접속하여야 한다. [그림 2. 일반적인 경우] 하지만 리눅스에서 제공하는 IP Masquerade를
이용하면 윈도머쉰에서 바로 인터넷에 연결된 호스트들을 엑세스할
수 있다. [그림 3. IP-Masquerade를 사용한 경우] 위의 그림과 같이 윈도에서 인터넷으로 바로 연결이 되어 윈도머쉰에 설치된 랜플래이가 가능한 게임이나 인터넷 폰 또는 여러 가지 네트윅 어플리케이션들을 사용할 수 있는데 이것이 바로 우리가 사용하고자 하는 IP Masquerade인 것이다. 그러면 이제 IP Masquerade를 사용하여 한껏 자유로움의 바다로 뛰어들어 보도록 하자.
1. 요구사항 하나이상의 동적/고정 IP Address를 가진 리눅스박스와
여기에 랜으로 연결된 여러 가지 OS머쉰들이 필요하다. 여기에는
리눅스의 커널 버전은 2.0X 이상의 버전이어야하며 ipfwadm이라는
유틸리티의 2.3이상 버전이 필요하다.
2. 리눅스쪽 세팅 먼저 커널에서 IP Masquerade를 지원하도록 하기 위해 커널을 컴파일하여야 한다. 커널컴파일에 관한 내용은 여기에서는 다루지 않으므로 커널컴파일 관련부분을 참조하기 바란다. 컴파일을 할 때 다른 부분은 일반적인 경우와 다름이 없으며 make config에서 아래와 같은 질문에 모두다 Yes로 답해주기만 하면 된다. 가능하다면 X-window에서 make xconfig으로 설정하고 설정사항을 저장해두면 다시 컴파일할 때 간편하다. enable loadable module support [Y] 커널 컴파일 부분을 참고해서 차례대로 컴파일을 한다. 커널 컴파일을 마치고 난 다음 모듈을 컴파일, 설치한다. make modules; make modules_install depmod -a 위에서 추가로 사용하고자 하는 어플리케이션은
여러분들이 적절히 알아서 추가하면 된다. 예를 들어서 cuseeme를
사용하고자 한다면 modprobe ip_masq_cuseeme라고 추가해주면 된다.
잠깐 사용할 수 있는 어플리케이션에 대해서 알아보자면 ftp, real
audio, vdolive, quake, irc, CU-Seeme등이 있는데 이는 /usr/src/linux/modules에서
확인해볼 수 있다. copyleft:/etc]# cat hosts
127.0.0.1은 로컬호스트로 자기 자신을 가리킨다는 사실은 모두 알고 있을 것이다. 그 아래에는 자신이 사용하고자 하는 호스트를 모두 적어주면 된다. 세 번째 칼럼에 오는 것은 alias로 풀호스트네임 대신에 자신이 원하는 별명을 줄 수 있다. 만약 여러분이 하이텔을 자주 사용하며 하이텔 IP를 네임서버에서 참조하는 것이 아니라 hosts파일에서 참조하고 싶다면 다음과 같이 추가해줄수도 있다. 203.245.15.250 home.hitel.net hitel 그 다음부터는 일일이 telnet home.hitel.net이라고 할 필요가 없고 telnet hitel만으로도 연결이 가능하다. 이것으로 리눅스쪽에서 설정해주어야 할 것들에 대해서 알아보았고 윈도쪽에 대해서 알아보도록 하자.
3. 윈도쪽의 세팅 윈도우에서는 특별히 세팅해줄 것이 없다. 3.1. 바탕화면의 네트워크 환경에서 마우스 오른쪽 버튼을 눌러서 등록정보를 선택하던지 또는 제어판에 있는 네트워크를 선택한다. 3.2. 설치된 네트웍 구성요소에서 TCP/IP프로토콜이 설치되어 있는지를 확인한 후에 없다면 "추가"-"프로토콜"-"추가"-"Microsoft"-"TCP/IP"를 눌러서 추가한다. 3.3. TCP/IP를 추가한 후에 더블클릭하여 등록정보창을 연다. 3.4. IP주소 탭에서 할당된 IP주소사용을 체크하고 IP주소와 서브네트 마스크를 적어둔다. IP주소는 리눅스에서 설정한 대로 적어주면 된다. 위의 /etc/hosts에 적어준 192.168.0.10을 그리고 서브네트 마스크는 C class인 255.255.255.0을 적는다. 3.5. 게이트웨이 탭을 선택하여 리눅스박스의 IP를 적어준다. 리눅스 박스는 192.168.0.1이므로 이를 적어주고 "추가"를 누른다. 3.6. 확인을 두 번 눌러서 다시 부팅한다. 3.7. 도스창을 열고 다음과 같이 입력해보자.
ping 192.168.0.1
4. Now! IP-Masquerading... 이제 리눅스와 윈도머쉰의 세팅은 모두 끝이 났다. 그러면 다시 리눅스 박스로 돌아오자. ipfwadm 2.3이상 버전을 사용하여 아래와 같이 명령을 내려보자. copyleft:~]# ipfwadm -F -p deny 위에서 ipfwadm은 IP Firewall Adminastration이라는
파이어월 관장 프로그램이며 -S 다음에는 윈도우 클라이언트의 IP
Address를 적어주면 된다. IP뒤에 따라오는 24는 서브네트마스크이며
여기에서 192.168.0.10은 C Class에 속하므로 24대신에 255.255.255.0을
적어주어도 상관없다. telnet home.hitel.net 텔넷창이 열리고 하이텔로 접속이 성공하였다면
모든 것이 정상적으로 된 것이다. 만약에 하이텔로 연결이 안된다면
다른 곳으로 연결을 시도해보고 그래도 에러가 발생하면 위의 과정을
다시한번 반복해서 점검해보자.
[그림 4. ws_ftp에서의 예제] 하지만 모든 윈도용 어플리케이션을 100% 다 사용할 수 있는 것은 아니다. 네트웍 플레이가 가능한 게임이나 인터넷폰, 넷미팅 등 여러 가지 어플리케이션은 정상적으로 작동하지 않는다. 그렇다고해서 전혀 방법이 없는 것은 아니다. 전세계 리눅서들은 불가능을 그냥 보아 넘기지 않기 때문이다. 많은 리눅서들이 이를 가능하게 하기 위하여 여러 가지 어플리케이션 사용방법에 대한 보고를 하고 있다. 그러면 어떻게 사용이 가능한지 그 방법과 또 사용가능한 여러 가지 어플리케이션들에 대해서 알아보기로 하자.
5. IP-Masq의 활용. 이제 우리가 원하는 IP공유기법에 대해서 대부분을 알아보았고 그 마지막 단계인 다양한 윈도용 어플리케이션 사용법에 대해서 이야기하기로 하겠다. 여기에서 디아블로를 예로 그 사용법을 알아보자. 디아블로 - Diablo (battle.net) tar xfvz ipautofw.tgz 다음은 커널 컴파일시에 아래와 같은 순서로 해주면 된다. cd/usr/src/linux 이제 디아블로로 랜플레이를 하기 위해서 다음과 같이 ipautofw를 사용하면 된다. ipautofw -A -r udp 61126112 -c tcp 116 이제 윈도쪽에서 디아블로를 실행하여 네트웍 플레이를 즐겨보자. 이상 디아블로의 경우를 알아보았는데 인터넷폰이나 넷미팅 등의 사용법은 조금씩 다르다. 사용할 수 있는 어플리케이션의 숫자가 아주 많으니 각각의 경우들을 여기에서 일일이 설명할 수는 없으니 그 활용법에 대해서 잘 정리해둔 사이트 http://dijon.nais.com/~nevo/masq에서 직접 그 사용법을 습득하기 바란다. 하지만 절대 어려운 것이 아니니 필요한 어플리케이션이 있다면 직접 시도해보자. 다음은 현재 사용이 가능하다고 보고된 총 93개의 어플리케이션 리스트이다. IP-Masquerade 관련 웹사이트 Games (15) 1. Diablo (battel.net) Chat Programs (18) 1. IRC Utilities (10) 1. SSH Web Stuff (7) 1. VDO Live Miscellaneous (3) 1. HTTP Requests (29) 1. MotoRacer Craveyard (1) 1. IGames
http://www.hwy401.com IP-Masquerade는 아직까지 리눅스에서 공식적으로 완성되어 제공하는 기능이 아니다. 지금도 여기에 대한 많은 노력을 하고 있으며 아마도 멀지 않은 시점에 아주 간단하게 사용할 수 있는 대안이 제시될 것이다. 나날이 일취월장하는 리눅스가 언젠가는 OS계의 대부로 군림할 날이 올 것이라고 믿어 의심치 않는다. |
||||||||||||||||||||||||||||||||||||||||||