NAT로 웹서버를 돌리고 있는데 웹에서 뭔가 작업을 하기만 하면 martian source가 나타납니다.

dopekly의 이미지

먼저 로그이구요.

martian source 192.168.3.2 from 192.168.3.2, on dev eth0
ll header: 00:c0:9f:1f:xx:xx:00:c0:26:80:xx:xx:08:00

웹서버 앞단에 있는 서버의 iptable 입니다.

iptables -t nat -A PREROUTING -p tcp -d 211.xxx.xxx.xxx --dport 80 -j DNAT --to 192.168.3.2
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.3.2 -j SNAT --to 211.xxx.xxx.xxx

그리고 라우팅 테이블 입니다. (211.xxx.xxx.xxx)

Destination Gateway Genmask Flags Metric Ref Use Iface
211.xxx.xxx.0 * 255.255.255.224 U 0 0 0 eth0
192.168.3.0 * 255.255.255.0 U 0 0 0 eth1
192.168.1.0 * 255.255.255.0 U 0 0 0 eth2
169.254.0.0 * 255.255.0.0 U 0 0 0 eth2
default 211.233.85.1 0.0.0.0 UG 0 0 0 eth0

웹서버 (192.168.3.2)

Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.3.0 * 255.255.255.0 U 0 0 0 eth0
169.254.0.0 * 255.255.0.0 U 0 0 0 eth0
default 192.168.3.1 0.0.0.0 UG 0 0 0 eth0

별 문제가 제 눈에는 없는것 처럼 보입니다. --;

192.168.3.2 서버 쪽의 /etc/sysconfig/network 에서 gateway도 제대로 잡혀 있습니다.
ifcfg-eth0 도 괜찮아 보이구요.

DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.3.255
HWADDR=00:C0:9F:1F:xx:xx
IPADDR=192.168.3.2
NETMASK=255.255.255.0
NETWORK=192.168.3.0
ONBOOT=yes
TYPE=Ethernet

211.xxx.xxx.xxx 서버 쪽도 마찬가지 입니다.

DEVICE=eth1
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.3.1
BROADCAST=192.168.3.255
NETMASK=255.255.255.0
NETWORK=192.168.3.0
HWADDR=00:C0:26:80:xx:xx

211.xxx.xxx.xxx 에서 기본 도메인 이름에 여러개 cname을 사용하여서 192.168.3.2에서 virtualhost로 사용하고 있는데요.
혹시 관련이 있을런지. 게다가 각 virtualhost마다 rewrite를 사용하고 있는데요. 여기서 뭔가 또 문제가 있을런지.

RewriteEngine On
RewriteRule ^/aaa$ http://aaa.domain.com
RewriteRule ^/bbb$ http://bbb.domain.com
...

요런식으로 말입니다.

그리고 나름대로 제일 의심가는 iptable rule이 문제가 아닌가 싶은데요. dnat와 snat를 저렇게 원래 사용을 하나요??

ydhoney의 이미지

http://ydhoney.egloos.com/2082568
 
 
====================여기부터 식은어치====================
안녕하세요. 저는 야동 초등학교 2학년 6반 11번입니다!! 제 컴퓨터에 리눅스를 깔아보고 싶습니다. 리눅스라는건 어제 처음 들어 보았습니다.
리눅스에서도 카트라이더는 되겠지요? 설마 안되나요? 안되면 왜 쓰나요? =3=33 리눅스에서는 카트라이더 캐릭터 머리가 너무 커서 못받아들이나요?

dopekly의 이미지

전 일부러 sysctl에서 martian source 메세지를 켰는건데요.

패킷이 제대로 아무 이상없이 잘 돌아가는지를 알아 보기 위해서..

계속되는 2인자

mithrandir의 이미지

SNAT은 끄셔도 될 것 같고요. 저 메시지는 소스ip도 192.168.3.2 이고 목적지ip도 192.168.3.2인 패킷이 들어왔다는 얘기에요. 물론 저 로그는 iptables돌리는데서 나온거겠죠?

tcpdump같은걸로 확인해보시면 더 좋겠네요. 웹서버에서 이상하게 뿌리는건 아닌지 등등.

그런데 DNAT이면 --to-destination, SNAT이면 --to-source 아니던가요? --to로만도 되던가..

언제나 삽질 - http://tisphie.net/typo/
프로그래밍 언어 개발 - http://langdev.net

dopekly의 이미지

예를 들어 SSH 서비스도 DNAT로 땡겨야 하나요?

물론 ssh뿐만 아니라 192.168.3.2 에서 사용하는 모든 포트들을 말이죠~
저는 일일이 DNAT로 적기 귀찮아서 나름 생각에 SNAT도 같이 적용한 것 입니다.

원래 DNAT는 DNAT만 SNAT는 SNAT 혹은 MASQUERADE 만 사용하나요???

계속되는 2인자

ydhoney의 이미지

뭔가 이상한 문제로 자기 패킷이 자기한테 되돌아오는 경우가 생기기도 합니다만..이건 뭐 잘 해주셔야 할 것 같고..

에헴;; 
 
====================여기부터 식은어치====================
안녕하세요. 저는 야동 초등학교 2학년 6반 11번입니다!! 제 컴퓨터에 리눅스를 깔아보고 싶습니다. 리눅스라는건 어제 처음 들어 보았습니다.
리눅스에서도 카트라이더는 되겠지요? 설마 안되나요? 안되면 왜 쓰나요? =3=33 리눅스에서는 카트라이더 캐릭터 머리가 너무 커서 못받아들이나요?

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.