인터넷 공유시 클라이언트 컴(윈도우 환경)의 dns를 서버컴(리눅스 환경)의 ip인 192.168.0.1
로 잡아주니까 주소를 찾지 못합니다. 210.220.163.82라는 하나로 dns를 적어주면 잘 되고요.
혹시 리눅스에서 다른 작업을 추가해줘야 하나요?(컴파일시나 iptables에서)
서버를 윈도로 부팅하면 잘 되구요, 리눅스에서만 안됩니다.
밑에는 iptables 설정입니다.
#!/bin/sh
#
# rc.firewall-2.4
# 하나로,두루넷,드림라인,샤크로케이블모뎀 등의 DHCP 유동IP사용자를 위한 커널2.4.x에서 ip
-masq구현하기 #iptables위치를 IPTABLES변수로 선언
IPTABLES=/sbin/iptables
# eth0은 외부이더넷, eth1은 내부이더넷
# eth0을 EXTIF변수로 선언
# eth1을 INTIF변수로 선언
EXTIF="eth0"
INTIF="eth1"
echo " External Interface:$EXTIF"
echo " Internal Interface:$INTIF"
# iptables와 ftp사용을 위한 모듈올리기
/sbin/insmod ip_tables
/sbin/insmod ip_conntrack
/sbin/insmod ip_conntrack_ftp
/sbin/insmod iptable_nat
/sbin/insmod ip_nat_ftp
# ip_forward위한 커널매개변수변경
echo "1" > /proc/sys/net/ipv4/ip_forward
# SLIP, PPP, or DHCP의 유동IP를 위한 커널매개변수변경
# 고정IP사용자는 필요없음
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
# IP forwarding과 Masquerading 설정시작
# 기존에 존재하는 rule을 지우고, 새로운 룰을 적용하기위한 정책설정
$IPTABLES -P INPUT ACCEPT
$IPTABLES -F INPUT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -F OUTPUT
$IPTABLES -P FORWARD DROP
$IPTABLES -F FORWARD
$IPTABLES -t nat -F
# iptables rule정책설정
$IPTABLES -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT
$IPTABLES -A FORWARD -j LOG
# ip-masq설정
$IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
밑에는 커널 설정한겁니다.
커널 설정
*Networking Options 란에서
*Network packet filtering (CONFIG_NETFILTER)
*Networking Options->Netfilter Configuration 란에서
*Connection tracking (CONFIG_IP_NF_CONNTRACK)
*FTP Protocol support (CONFIG_IP_NF_FTP)
*IP tables support (CONFIG_IP_NF_IPTABLES)
*Connection state match support (CONFIG_IP_NF_MATCH_STATE)
*Packet filtering (CONFIG_IP_NF_FILTER)
*REJECT target support (CONFIG_IP_NF_TARGET_REJECT)
*Full NAT (CONFIG_IP_NF_NAT)
*MASQUERADE target support (CONFIG_IP_NF_TARGET_MASQUERADE)
*REDIRECT target support (CONFIG_IP_NF_TARGET_REDIRECT)
*Packet mangling (CONFIG_IP_NF_MANGLE)
*LOG target support (CONFIG_IP_NF_TARGET_LOG)