[질문] 브릿지와 masquerade 동시 사용에 대하여..
글쓴이: onlytrue / 작성시간: 목, 2005/02/24 - 10:01오전
현재 다음과 같이 연결이 되어 있으며
세대의 컴에서 모두 인터넷을 잘 사용하고 있습니다.
문제는 각 클라이언트의 서브넷이 달라서 상호 접속이 안되는 것 뿐이었습니다.
하나로ADSL모뎀 | | (ppp0 : adsl-setup을 통해서 접속이 이루어졌음) | --------------------------------------------- | eth0 10.0.0.1/255.0.0.0 (외부 연결) | | | (리눅스) | eth1 192.168.1.1/255.255.255.0 (xp1 연결) | | eth2 192.168.2.1/255.255.255.0 (xp2 연결) | --------------------------------------------- | | | | | (xp 1컴) | (xp 2컴) --------------------- ----------------------- | 192.168.1.2 | | 192.168.2.2 | | /255.255.255.0 | | /255.255.255.0 | --------------------- -----------------------
그래서 각 서브넷을 같게 만들어서 각 클라이언트간 상호 접속이 되도록
다음과 같은 방법을 사용하였습니다.
1) 커널 재컴파일(ethernet bridge 커널옵션에 포함/커널버젼 2.4.20)
2) bridge-utils-1.0.4 설치
3) 다음의 명령줄 실행
brctl addbr brg0 brctl addif brg0 eth1 brctl addif brg0 eth2 ifconfig eth1 0.0.0.0 promisc up ifconfig eth2 0.0.0.0 promisc up ifconfig brg0 192.168.0.1 netmask 255.255.255.0 up
4) 역시 다음의 명령줄 실행
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
이렇게 한 후의 ifconfig 내용입니다.
brg0 Link encap:Ethernet HWaddr 00:50:BF:56:BA:E1 inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:126 errors:0 dropped:0 overruns:0 frame:0 TX packets:92 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:9756 (9.5 Kb) TX bytes:6729 (6.5 Kb) eth0 Link encap:Ethernet HWaddr 00:10:5A:76:00:06 inet addr:10.0.0.1 Bcast:10.255.255.255 Mask:255.0.0.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:962 errors:0 dropped:0 overruns:0 frame:0 TX packets:893 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:761844 (743.9 Kb) TX bytes:99467 (97.1 Kb) Interrupt:17 Base address:0xec00 eth1 Link encap:Ethernet HWaddr 00:C0:26:2A:81:AC UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1 RX packets:1439 errors:0 dropped:0 overruns:0 frame:0 TX packets:1544 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:163878 (160.0 Kb) TX bytes:967212 (944.5 Kb) Interrupt:18 Base address:0x8e00 eth2 Link encap:Ethernet HWaddr 00:50:BF:56:BA:E1 UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:152 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:0 (0.0 b) TX bytes:17691 (17.2 Kb) Interrupt:19 Base address:0xef40 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:10 errors:0 dropped:0 overruns:0 frame:0 TX packets:10 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:700 (700.0 b) TX bytes:700 (700.0 b) ppp0 Link encap:Point-to-Point Protocol inet addr:211.xxx.yy.zz P-t-P:211.xxx.yy.1 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1 RX packets:946 errors:0 dropped:0 overruns:0 frame:0 TX packets:828 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:3 RX bytes:740012 (722.6 Kb) TX bytes:73412 (71.6 Kb)
다음은 라우팅테이블 결과입니다.
Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 211.xxx.yy.1 * 255.255.255.255 UH 0 0 0 ppp0 192.168.0.0 * 255.255.255.0 U 0 0 0 brg0 10.0.0.0 * 255.0.0.0 U 0 0 0 eth0 127.0.0.0 * 255.0.0.0 U 0 0 0 lo default 211.xxx.yy.1 0.0.0.0 UG 0 0 0 ppp0
다음은 iptables -L -t nat 결과입니다.
Chain PREROUTING (policy ACCEPT) target prot opt source destination Chain POSTROUTING (policy ACCEPT) target prot opt source destination MASQUERADE all -- anywhere anywhere Chain OUTPUT (policy ACCEPT) target prot opt source destination
이렇게 하고 각 클라이언트의 ip를 각각 192.168.0.1/24와 192.168.0.2/24로 맞추어주었습니다..
근데,, 클라이언트에서 인터넷이 안되네요..
ping도 상호간에 다 되고, telnet접속도 다 되는데..
왜 웹서핑만 안되는 걸까요..
정말 부탁드립니다.. 꼭 많은 도움 부탁드려요..
Forums:
___
___
원래대로 돌려놓으시고,192.168.x.x ip 들의 Mask 를
원래대로 돌려놓으시고,
192.168.x.x ip 들의 Mask 를
255.255.0.0 으로 하면 될것 같네요.
너무 열어놨다 싶으면 192.168.1~2 를 허용하도록
255.255.252.0 으로...
댓글 달기