Ubuntu 서버를 인터넷 공유기로 사용하기

By | 2009년 10월 28일

서버를 인터넷 공유기처럼 사용하려면 IP forwarding기능이 가능해야 하고 또한 DHCP 서버가 실행되고 있어야한다. 아래 예는 Ubuntu Linux에 eth0, eth1 두 개의 네트워크 카드가 설치돼 있으며, eth0는 인터넷과 eth1은 사설 IP(192.168.1.xxx)를 사용하는 내부 네트워크와 연결됐음을 가정하였다.

1. 다음 명령을 이용 IP forwarding이 가능하도록 한다.

sudo sysctl -w net.ipv4.ip_forward=1

2. 위 명령을 주어도 서버가 재 부팅 된다면 IP forwarding 기능이 활성화 되지 않기 때문에 부팅 시 자동으로 IP forwarding이 가능하도록 해야하는데 이를 위해서 /etc/sysctl.conf 파일의 #net.ipv4.ip_forward=1 부분의 주석 처리 ‘#’를 없애다.

sudo vi /etc/sysctl.conf

net.ipv4.ip_forward=1

3. 현재 IP forwarding 기능이 활성화 됐는지 여부를 확인하려면 아래 명령을 입력한다. 그 결과가 net.ipv4.ip_forward = 1 로 나오면 활성화 됐음을 의미하고 그렇지 않으면 활성화 되지 않았음을 의미한다.

sudo sysctl net.ipv4.ip_forward

4. 외부로 부터 내부로 들어오거나 내부에서 외부로 나가는 패킷을 가능하도록 하기 위해 아래 두 명령을 입력한다.

sudo /sbin/iptables -P FORWARD ACCEPT
sudo /sbin/iptables –table nat -A POSTROUTING -o eth0 -j MASQUERADE

5. 위 명령 역시 부팅시 자동으로 실행되도록 하기 위해 /etc/rc.local 파일의 exit 0 윗 부분에 두 라인을 추가한다.

sudo vi /etc/rc.local

/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables –table nat -A POSTROUTING -o eth0 -j MASQUERADE

6. 이제 내부 네트워크의 컴퓨터들에게 IP를 할당해 줄 수 있도록 DHCP 서버를 아래 명령을 이용 설치한다.

sudo apt-get install dhcp3-server

7. 설치 후 /etc/dhcp3/dhcpd.conf의 내용을 아래와 같이 입력한다. 이 설정은 domain Name을 “mynetwork”로, Domain Name Server로 IP 주소가 61.41.153.2, 203.248.252.2인 두 대의 서버를 사용하며, 내부 네트워크에 연결된 컴퓨터가 IP 할당을 요구할 경우 192.168.1.100에서 192.168.1.254 사이의 값 중 하나를 할당해 주도록 한다.
 

sudo vi /etc/dhcp3/dhcpd.conf

ddns-update-style none;

option domain-name “mynetwork“;

option domain-name-servers 61.41.153.2, 203.248.252.2;

option routers 192.168.1.1;

default-lease-time 42300;

max-lease-time 84600;

authoritative;

log-facility local7;

subnet 192.168.1.0 netmask 255.255.255.0 {

   range 192.168.1.100 192.168.1.254;
}

8. /etc/default/dhcp3-server 파일의 내용 중 INTERFACES 항목을 내부 네트워크에 연결된 네트워크 카드의 장치명으로 설정한다.

sudo vi /etc/default/dhcp3-server

INTERFACES=”eth1

9. 설정을 완료한 후 DHCP 서버를 실행하면 서버를 공유기처럼 사용할 수 있다.

sudo /etc/init.d/dhcp3-server start

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.