Kernel 2.6.22 netfilter 후킹 문의.

pwy1575의 이미지

안녕하세요

iptables 공부중에 이상동작을 발견 하여 문의 드립니다.

테스트 환경 : linux kernel 2.6.22

테스트 방법 :
1. br0 이란 인터페이스를 통해 패킷 시작
2. tun0 란 인터페이스에 마스커레이딩(POSTROUTING) 적용
3. tun0 인터페이스 up

예상결과
* br0 올라온 패킷의 src 아이피가 tun0 인터페이스의 IP 로 변경될 것으로 예상

실제결과
* br0 에서 올라온 패킷의 src 아이피가 그대로 tun0 를 통해 나감(tcpdump 로 확인)

공부하기로는 OUTPUT 을 거치기전에 POSTROUTING 이란 커널의 후킹 시점을 거쳐 마스커레이딩 동작이 일어나야 하나
동작하지 않음.

예상 원인 : tun0 의 인터페이스 up 밑 routing 테이블이 갖춰지지 않은 상태에서 br0 에서 패킷이 지속적으로 발생시 생기는 것으로 추정

위와 같은 문제를 경험 해보시거나 해결 방안을 알고 계신분은 답변 부탁드립겠습니다.

익명 사용자의 이미지

이거 2019년에 올라온 글 맞나요? 지금 커널 2.6.22를 사용하는 이유가 있나요?

익명 사용자의 이미지

라우팅 테이블과 마스커레이딩을 어떻게 설정했는지 알 수 있을까요?

Necromancer의 이미지

2.6대면 빨간모자9를 커널컴파일로 업데이트한거 아니면 페도라 초기버전일텐데.
설마 어거지로 설치한 빨간모자9는 아니겠죠? SATA를 IDE호환모드로 바꾼다거나 등등 성능 다운시키는 별별 호환설정 안하면 인스톨도 불가능할텐데. 장비 개발하는데 쓰겠다 해도 최근걸로 다시 설치하시는게 나을겁니다. 커널말고도 glibc, binutils 같은 것들도 변경사항도 많고 구버전은 개구멍도 많습니다.

Written By the Black Knight of Destruction

김정균의 이미지

RHLE5 가 2.6.18 기반의 커널입니다. RH9 는 너무 멀리 보신 것 같습니다. :)

백연구원의 이미지

정책을 정상적으로 타지 않는 것 같은데 forward나 netfilter가 활성화 되어 있는지 체크해보시는 것도 좋을 것 같네요.


소곤소곤

 pwy1575 의 이미지

해당 주소의 인터페이스가 준비되기 전에 다른 곳에서 패킷이 지속 발생할 경우
nf_nat_standalone.c에서 case IP_CT_NEW: 경우
if (!nf_nat_initialized(ct, maniptype)) 이 else 의 경우로 빠져 conntract에 쌓이게 되어
발생하는 문제 였습니다.

else 구문에 nf_conntrack_flush(); 호출로 conntrack에 쌓인 패킷을 날림으로써 해결 하였습니다.

댓글 달기

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