라우터 셋팅 (packet forward)
제가 문의 드리고자 하는 내용은 다음과 같습니다.
현재 저희는 다음과 같은 네트워크 실험망(첨부파일)을 구성하고 있습니다.
지금 현재 저희가 설치한 버전은 redhat 9.0 배포판을 다운받아 설치하였습니다.
router2라는 컴퓨터를 라우터로 셋팅하고자 합니다.
다음은 Router2의 설정 내용입니다.
( 참조. 파일명은 청색, 파일 내용은 갈색 입니다.)
1. network 설정 파일
/etc/sysconfig/network
NETWORKING=yes
HOSTNAME=Router2
GATEWAY=163.153.102.1
FORWARD_IPV4=yes
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
BROADCAST=163.153.102.255
IPADDR=163.153.102.1
NETMASK=255.255.255.0
NETWORK=163.153.102.0
ONBOOT=yes
/etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=static
BROADCAST=163.153.202.255
IPADDR=163.153.202.1
NETMASK=255.255.255.0
NETWORK=163.153.202.0
ONBOOT=yes
위에 내용 설정후 /etc/rc.d/init.d/network restart 함
2. 사용라우팅 (RIP)
/etc/rc.d/init.d/routed 사용
위에 내용 적용을 위해 /etc/rc.d/init.d/routed start 함
3. Kernel 설정
/etc/sysctl.conf
# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and
# sysctl.conf(5) for more details.
# Controls IP packet forwarding
net.ipv4.ip_forward = 1
# Controls source route verification
net.ipv4.conf.default.rp_filter = 1
# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 0
# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid = 1
위에 내용 적용을 위해 sysctl -p 함
/proc/sys/net/ipv4/ip_forward
1
위와 같은 설정을 사용하여 셋팅을 하였을 때에, router2에 eth0에 host1, eth1에 host2가 연결되어 있다면 router2에서 host1, host2에 각각 ping은 잘 됩니다.
그러나 host1에서 host2나 host2에서 host1으로의 ping이 되지를 않습니다.
그러나 route 명령을 통하여 보았을 때 라우팅 테이블은 정상적인 상태이므로
현재상으로 router2에서 packet forward가 되지 않는 것으로 생각됩니다.
routing table (route 명령을 통해 확인)
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
163.153.101.0 163.153.102.11 255.255.255.0 UG 1 0 0 eth0
163.153.102.0 163.153.102.1 255.255.255.0 UG 0 0 0 eth0
163.153.102.0 * 255.255.255.0 U 0 0 0 eth0
163.153.201.0 163.153.102.11 255.255.255.0 UG 2 0 0 eth0
163.153.202.0 163.153.202.1 255.255.255.0 UG 0 0 0 eth1
163.153.202.0 * 255.255.255.0 U 0 0 0 eth1
169.254.0.0 * 255.255.0.0 U 0 0 0 eth1
127.0.0.0 * 255.0.0.0 U 0 0 0 lo
default 163.153.102.1 0.0.0.0 UG 0 0 0 eth0
제가 해본 내용은 여기까지입니다.
p.s
저희가 여러가지를 시도하여도 되지 않아 Kernel complie 또한 해 보았으나 되지 않았습니다.
kernel compile은 해본 내용은 redhat 9.0 기본 kernel version인 2.4.20-8과 새로운 버전 2.5.29를 해보았으며,
설정내용에서 Networking Option에서 IP advanced router를 체크하였습니다.
첨부 | 파일 크기 |
---|---|
![]() | 128.5 KB |
host1과 host2의 디폴트 게이트웨이가 어디로 지정되어 있나요?
host1과 host2의 디폴트 게이트웨이가 어디로 지정되어 있나요?
host1의 디폴트게이트웨이가 router2의 eth0으로 되어 있나요?
host2의 디폴트게이트웨이가 router2의 eth1으로 되어 있나요?
[quote="우겨"]host1과 host2의 디폴트 게이트웨이가 어디로
host1(163.153.201.201) default gateway : router1의 eth1(163.153.201.1)
host2(163.153.202.202) default gateway : router2의 eth1(163.153.202.1)
위와 같이 설정되어 있습니다.
참고적으로 router2에서 client2과 router1에서 client1에게 ping은 가능합니다.
그러나 client1에서 client2와 client2에서 client1에게 ping이 되지 않습니다.
그니까
제가 보기엔 백중팔구(작죠?) 방화벽 문제가 아닌가 싶습니다.
/etc/init.d/iptables stop
혹은
# iptables -F 해보시고
routed는 필요없으니 내려버시구요.
static route 만 잘잡혀있으면 할게 없어 보이는 데요.
(안에 들어가 보고싶지만..)
------------------------- 추가 ------------------------------
다시 보니 약간 더 복잡한 설정이군요.
router1과 router2사이에 proxy 는 물리적으로 중간에 꽂혀 있는 거겠죠?
router1과 router2 끼리 ping은 되는지가 궁금하네요.]
routed를 돌리면 손으로 static route 를 잡을 필요가 없을 텐데요.
먼가 다른 심오한 게 있는 걸까요?
잡언:The last night as an user-being
-------------------------------
== warning 대부분 틀린 얘기입니다 warning ===
Re: 그니까
감사합니다.
님 덕분에 해결이 되었습니다.
정말로 감사합니다.
댓글 달기