ADSL, 케이블 모뎀을 한꺼번에 iptables를 이용해서 공유하기

소타의 이미지

리눅스 라우터가 있습니다. 원래는 ADSL하나 끌어다 쓰고 있었는데 케이블 모뎀을 하나 추가했습니다..
인식은 다 됐고 두 선 모두 IP는 잘 받아오는데요..

eth0(ppp0): ADSL
eth1: 케블모뎀
eth2: 내부 허브로

이렇게 되어 있습니다..
그런데 192.168.0.2~10 번 까지만 케이블 모뎀을 쓰게 하고 나머지는 ADSL 쓰게 해야 하거든요
iptables 쓰고 있는데 이래저래 해봐도 잘 안되는군요.

아래는 공유 설정을 켜는 스크립트입니다. 페도라 코어2 입니다.

modprobe ipt_MASQUERADE
iptables -F; iptables -t nat -F; iptables -t mangle -F
iptables -t nat -A POSTROUTING -s 192.168.0.0 -o ppp0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.0.2 -o eth1 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -L

이렇게 되어 있었는데 모든 컴퓨터들이 자꾸 ppp0으로만 사용하게 되네요..

iptables -t nat -A POSTROUTING -s ! 192.168.0.2 -o ppp0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.0.2 -o eth1 -j MASQUERADE

이렇게 해봐도 마찬가지입니다..
도움 부탁드립니다~

onlytrue의 이미지

내부 허브로 연결되는 eth2의 경우 192.168.0.1로 설정되어 있는 건지요?

modprobe ipt_MASQUERADE 
iptables -F; iptables -t nat -F; iptables -t mangle -F 
iptables -t nat -A POSTROUTING -s 192.168.0.0 -o ppp0 -j MASQUERADE 
iptables -t nat -A POSTROUTING -s 192.168.0.2 -o eth1 -j MASQUERADE 
echo 1 > /proc/sys/net/ipv4/ip_forward 
iptables -t nat -L 

위에서 3번째 줄에 -s 192.168.0.0표시된 부분의 경우
192.168.0.x로 시작되는 모든 사설IP에서의 매스커레이딩을 ppp0로 보내고 있기 때문에
다음 라인에서 eth1로 매스커레이딩을 설정해도 안 되고 있는 것 같습니다.

^^

woonuk의 이미지

default gateway 때문에 iptables 만으로는 adsl과 케이블을 활용할수 없습니다.
(혹시 방법이 있는지도 모르지만 -_-;;)

http://kltp.kldp.org/stories.php?story=01/10/03/7562565

Advanced Routing HOWTO 요약이라는 글인데 응용하면 가능할 겁니다.

mushim의 이미지

iptable 과 iproute2 패키지를 사용하시면, ADSL 과 전용선인(고정 IP 게이트웨이)경우는 다음과 같이 하면 되는데, ADSL 과 케이블은 조금 더 연구해야 할것 같네요.

일단 ADSL 과 전용선인 경우는 다음과 같이 하면 됩니다.

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

/etc/iproute2/rt_tables 파일에 다음과 같이 지정하고
200 cable.table

ip rule add from 192.168.0.2 lookup cable.table
ip rule add from 192.168.0.3 lookup cable.table
..
ip rule add from 192.168.0.9 lookup cable.table
ip rule add from 192.168.0.10 lookup cable.table

ip route add default via "전용선 게이트웨이 IP" dev eth1 table cable.table

참고) http//lartc.org/howto/lartc.rpdb.multiple-links.html

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.