System/OS
2003.04.23 10:30
[linux] Masquerade 가상 ip분할기법
조회 수 47936 댓글 0
1. 리눅스 서버 네트워크 셋팅
$ vi /etc/sysconfig/network
FORWARD_IPV4=yes
1.1 네트워크 카드가 하나일 경우(방화벽 기능이 약한 Masquerading)
$ vi /etc/rc.d/rc.local
ifconfig eth0:0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255 up
route add -host 192.168.1.1 dev eth0:0
1.2 네트워크 카드가 두개일 경우
$ netcfg
Names: Hostname - 639.netive.com
Domain - joongang.thrunet.com
Nameservers - 210.117.65.1
210.117.65.2
Hosts: " " # dhcp인 경우
# 203.239.44.130-639.netive.com-639 # static ip인 경우
Interfaces: eth0 - - proto dhcp - atboot yes - active # dhcp인 경우
# eth0 - 203.239.44.130 - proto none - atboot yes - active # static ip인 경우
eth1 - 192.168.1.1 - proto none - atboot yes - active
Routing: Network Packet Forwarding(IPv4) Check
Default Gateway - " " # dhcp인 경우
# Default Gateway-203.239.44.50 # static ip인 경우
Default Gateway Device - eth0
2. 리눅스 서버 환경 설정
$ vi /etc/rc.d/rc.local
# Web과 Telnet 이외의 서비스 추가: 일반적인 설정
/sbin/depmod -a
/sbin/modprobe ip_masq_ftp
/sbin/modprobe ip_masq_raudio
/sbin/modprobe ip_masq_irc
/sbin/modprobe ip_masq_cuseeme
/sbin/modprobe ip_masq_vdolive ports=7000, 7010, 32649
/sbin/modprobe ip_masq_quake
/sbin/modprobe ip_masq_autofw
/sbin/modprobe ip_masq_mfw
/sbin/modprobe ip_masq_portfw
/sbin/modprobe ip_masq_user
# IP Masquerading 동작
ipchains -P forward DENY # 우선 막아 놓고
ipchains -A forward -j MASQ -s 0.0.0.0/0 -d 0.0.0.0/0 # 모두 허락
# ipchains -A forward -j MASQ -s 192.168.1.0/24 -d 0.0.0.0/0 # 192.168.1.* 밑의 모든 ip에게 허락
# ipchains -A forward -j MASQ -s 192.168.1.39/32 -d 0.0.0.0/0 # 단지 특정 192.168.1.39 ip에게만 허락할 경우
# ipfwadm -F -p deny # 옛날 버전의 방화벽 프로그램을 이용할 경우
# ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0
# IP Masquerading 최적화
ipchains -A output -p tcp -d 0.0.0.0/0 telnet -t 0x01 0x10
ipchains -A output -p tcp -d 0.0.0.0/0 ftp -t 0x01 0x10
ipchains -A output -p tcp -s 0.0.0.0/0 ftp-data -t 0x01 0x08
ipchains -A output -p tcp -d 0.0.0.0/0 nntp -t 0x01 0x02
3. 다이알패드 이용시 설정
ipchains는 포트 포워딩을 하지 않으므로 ipmasqadm Tool을 설치한다
다운로드 http://juanjox.kernelnotes.org/ipmasqadm-0.4.2.tar.gz (source)
ipmasqadm-0.4.2-2.i386.rpm (glibc2 rpm)
ipmasqadm-0.4.2-2.src.rpm (source)
ipmasqadm-0.4.2-2.glibc2.tar.gz (glibc2 tar)
Firewall을 이용한다면, UDP: 51200, 51201, and TCP: 51210로 설정합니다.
아래 /etc/rc.d/rc.local 파일에 아래 2줄을 추가하고, 재부팅 하십시오
/usr/sbin/ipmasqadm autofw -A -v -u -r udp 51200 51201 -c tcp 7175
/usr/sbin/ipmasqadm autofw -A -v -u -r tcp 51210 51210 -c tcp 7175
추가적인 정보를 원하시면, http://www.ispchannel.com/~rottona/linux_dialpad.html을 방문하시기 바랍니다.
4. 윈도우 클라이언트 설정
# 네트워크 등록정보에서
IP address 192.168.1.2~254
gateway 192.168.1.1
DNS 210.112.65.1
210.112.65.2
5. 테스팅
- 리눅스 서버에서 내부, 외부 ping 이 모두 되는가
- 내부 클라이언트에서 리눅스 서버로 ping 되는가
- ip forward 기능이 동작 되는가
$ cat /proc/sys/net/ipv4/ip_forward 의 값이 0 이 아닌 1 이어야 한다. 0 이면
$ echo 1 > /proc/sys/net/ipv4/ip_forward 라고 해서 enable 시켜준다
--------------------------------------------------------------------------------------
IANA는 다음의 세 블록에 해당하는 주소 공간을 사설 인터넷을 위하여 예약해 놓았다.
10.0.0.0 - 10.255.255.255 (10/8 prefix)
172.16.0.0 - 172.31.255.255 (172.16/12 prefix)
192.168.0.0 - 192.168.255.255 (192.168/16 prefix)
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
1173 | System/OS | 해커스랩 깨기.. 후후.. ㅋㅋ | hooni | 2013.04.23 | 18410 |
1172 | Etc | 플라스터(Plaster) 수업 내용 | hooni | 2016.05.24 | 0 |
1171 | Develop | 프로그램 문서 관리 (Doxygen) | hooni | 2013.04.23 | 16384 |
1170 | Develop | 프로그래밍에서 foo, bar 함수의 유래 | hooni | 2013.06.25 | 21243 |
1169 | Develop | 프로그래밍 소스 관련 사이트.. | hooni | 2013.04.23 | 16484 |
1168 | Develop | 페이팔에서 돈 찾기 (Paypal withdraw) | hooni | 2014.02.20 | 10955 |
1167 | Etc | 티스토리 테이블 html,css 구문 | hooni | 2013.11.03 | 15943 |
1166 | System/OS | 콘솔에서 패스워드 걸린 zip 압축하는 명령 | hooni | 2018.03.02 | 927 |
1165 | System/OS | 컴파일러 수업 자료(교재 : 컴파일러 입문) | hooni | 2003.04.23 | 21965 |
1164 | Develop | 캘리포니아 운전면허 족보 | hooni | 2017.06.12 | 724 |
1163 | Etc | 캘리포니아 운전면허 문제 | hooni | 2017.07.22 | 966 |
1162 | Develop | 최근 논문 자료 (2011/01/03, 만현형한테 보낸거..) | hooni | 2013.04.23 | 10366 |