ANT 배선을 마치고 정상적인 시그널을 확인했다면 리눅스 시스템을 설정하여 ISP와의 연결을 확인할 단계이다. 여기서는 리눅스 시스템을 언급하겠지만, ANT에 10baseT 타입의 장비 어떤 것이든(라우터나 허브, PC, 혹은 사용하고자 하는 다른 장비) 연결할 수 있다.
주의! ISP에 연결하기 전에, ADSL을 통해 인터넷에 연결했을 때 발생할 수 있는 모든 보안관련 문제를 확인해야 한다. ISP에 따라 다르긴 하지만 대부분의 외부 사용자가 당신의 시스템에 접근 가능하게 될 것이 때문에 방화벽을 설치하거나, 사용하지 않을 포트/서비스를 결정하고, 접속할 수 있는 비밀번호의 우선순위를 정하는 등의 작업이 필요하다. Security-HOWOTO가 이 문제에 도움을 줄 수 있을 것이다.
NIC 카드를 리눅스 머신에 설치하고 커널을 설정하고, 등등등.. 의 작업이 필요하다. 이 작업에 대해서는 여러가지 참고 자료가 있으니 그걸 참고하라. Ethernet-HOWTO에 보다 자세한 정보가 있을 것이다.
RJ45 케이블을 이용하여 NIC와 ANT 사이를 연결한다. 참고 몇몇 ANT들은 벌써 10baseT 크로스오버 용으로 배선이 되어있을 수 있는데, 이 경우에는 다이렉트 카테고리 5 케이블이 크로스오버 케이블 대신 필요하다. 이 사실을 알아내는데 12시간을 소비한 경험이 있기 때문에, 여러분이 같은 실수를 반복하지 않기를 바란다. 우선 설명서를 차근차근 읽어보라.
IP 주소를 설정하고, 서브넷 마스크, 기본 게이트웨이, DNS 서버 정보 등을
설정해 준다. 각각의 리눅스 배포본(레드햇, 데비안, 슬랙웨어, SuSE)는 고유한
설정 방법이 있기 때문에 당신이 사용하고자 하는 시스템에 맞는 정보를
찾아보기 바란다. ifconfig나 route 명령어를 이용하여 수동으로
이 정보를 설정해 줄 수도 있다. NET3-HOWTO에 보다 자세한 정보가
있을 것이다.
한번 시스템이 설정된 다음에는 ISP에서 지정한 기본 게이트웨이 주소로 ping을 수행하여 그 결과를 확인할 수 있다. 만약 ping의 결과가 성공적이면, 20 ms 정도의 roundtrip delay를 확인할 수 있을 것이다. 축하한다, 인터넷에 연결되었다!
지역 네트워크를 어떻게 설계하는가에 따라 다르기 때문에 다른 내용을 확인해야 한다. 이것은 방화벽 설정이나 다른 관계있는 설정을 포함한다. 그림 3에서 볼 수 있는 나의 설정에는, 구식 486 컴퓨터를 ADSL과 나머지 컴퓨터 사이에서 방화벽/라우터의 역할을 하도록 설정하였다. 나는 또한 내 개인의 LAN 서브넷에 개인 IP 주소를 사용하고 라우터가 LAN과 인터넷 연결 사이에서 방화벽/IP 매스커레이딩 작업을 수행하도록 설정하였다. IP_Masquerading-HOWTO나 Firewall-HOWTO를 참고하면 보다 많은 자료를 얻을 수 있을 것이다. 나의 경험에 의하면 리눅스는 가장 훌륭한 라우터/방화벽 기능을 수행할 수 있으며, 문을 받쳐두기 위해서나 기껏 사용할 386/486 기계를 이용할 수 있으므로 상업용 라우터에 비해 비교할 수 없을 정도로 저렴한 가격으로 구축할 수 있다.
그림 3. 나의 SOHO 네트워크 설정
<-개인 서브넷--> <-공용 서브넷--> <-ADSL 라인--------->
|
X----|
|
X------| X----| |----|
| |--------| | |ADSL| ISP
| | Linux | |-----|ANT |----------> 라우터
X------|------| System |--------| | |
| E1|(Router)|E0 | |----|
| |--------| |
X------| IP_Masq 10baseT
IP_Firewall Hub
내가 해준 일은 두 개의 이더넷 인터페이스를 이용하여 라우터를 설정해 준 것 뿐이다(리눅스 레드햇 5.0을 i486에 설치하여 사용하였다). 하나의 인터페이스는 ISP 서브넷/게이트웨이와 연결하고, 다른 하나의 인터페이스는 개인 네트워크 주소(192.168.2.x 와 같은)를 연결하였다. 라우터 뒤쪽에 위치하는 개인 네트워크 주소는 ISP 외부에서 전혀 인식할 수 없는 주소이기 때문에 당신의 시스템에 대한 보안 정도를 높여줄 것이다. 인터넷에 연결하기 위해서는 추가로 개인 주소들에 대한 매스커레이딩을 해주어야 한다.
주의 IP 포워딩 기능과 함께 커널을 컴파일하고 그 기능을 실행시켜야 한다. 다음과 같이 이 사실을 확인할 수 있다.
cat /proc/sys/net/ipv4/ip_forward
1은 기능이 실행되고 있음을 의미하며, 0은 기능이 꺼져 있음을 의미한다. 만약 이 값을 바꾸고 싶다면 echo를 이용하여 원하는 값을 덮어쓰면 된다.
(예.) echo 1 > /proc/sys/net/ipv4/ip_forward
이러면 IP 포워딩 기능이 작동할 것이다.
만약 인터넷에 직접 연결이 되어도, 방화벽 기능과 매스커레이딩 기능도 수행하길 원할 것이다. 그림 4는 이것에 대한 그림이다.
주의! 나는 또한 이 설정이 보안 환경을 만드는 것에 일부분이라는 것을 강조하지 않을 수 없다. Ftp나 telnet, 라우터와 같은 기타 다른 서비스를 막는다거나 비밀번호, 로그인 등에 대한 사용자 정책 역시 같이 고려되어야 한다. Security-HOWTO를 확인하라.
그림 4: ADSL을 사용한 방화벽/매스커레이딩
|-------| |-------| |-X
======X| ADSL |=------| Linux |-----|
ADSL | ANT | E0| |E1 |-X 개인 네트워크
Line |-------| |-------| | (예. 192.168.2.x)
<-------> |...
ISP Subnet or host
(공용 네트워크 주소)
리눅스 라우터로 사용하기 위해서는 커널에 IP 포워딩/매스커레이딩 기능을 포함하고 컴파일을 해야 하며, ipfwadm(IP 방화벽 소프트웨어)를 다음과 같이 설치해야 한다:
file: /etc/rc.d/rc.firewall (레드햇 5.0에서는 rc.sysinit)
echo "방화벽 설정" # # From the "Firewall-HOWTO" # # 모든 설정 초기화 # ipfwadm -F -f # # 방화벽 설정 # ipfwadm -F -p deny # # 192.168.2.x 주소의 모든 머신을 매스커레이딩 허용 # ipfwadm -F -a accept -m -S 192.168.2.0/24 -D 0.0.0.0/0 # # 도메인 네임 서버 허용(udp 53)i # ipfwadm -F -a accept -b -P udp -S 0.0.0.0/0 53 -D 192.168.2.0/24 ipfwadm -F -p masquerade # # 나머지 기능은 알아서 하세요 # ipfwadm -F -l ipfwadm -O -l ipfwadm -I -l
몇몇 응용 프로그램들은 특별한 모듈 없이는 작동하지 않을 수도 있으니 주의해야 한다(ftp나 real audio 등). ipfwadm 문서를 확인해 보라. 내가 볼 때에는 이 문서는 쉽게 설정을 할 수 있도록 잘 쓰여져 있다.
추가로, 개인 네트워크 주소를 사용하게 되면 지역 LAN 시스템을 유동적이며 값싸게 구축할 수 있다. 매스커레이딩의 약점은 어느 정도 지원을 할 수 있는 개인 호스트의 개수가 제약이 있으며 몇몇 IP 응용 프로그램이 호스트의 주소를 데이터 필드에서 통과시킬 경우 제대로 작동하지 않을 수 있다는 것이지만 이것은 미비한 정도이다.