arp / mac 관련 질문입니다.

musik의 이미지

음..

인터넷구간으로 나갈 패킷을 적당히 조립하여 놀고 있었습니다.

근데 제가 궁금한 것은... 디폴트게이트웨이의 MAC 어드레스를 영 엉뚱한 값으로 세팅해서 날려봐도 어떻게 된 일인지 외부로 패킷이 잘 나가네요? :roll:

그렇다면 엉뚱한 값의 MAC 주소를 가진 이더넷 프레임을 디폴트게이트웨이 장비가 지가 알아서 받았다는 얘긴데... 어떻게 이게 가능한지 모르겠습니다.

그것도 아니라면, 게이트웨이의 IP레벨에서 MAC 주소를 무시하고 처리한다는 얘기같은데... 그다지 합리적인 결과로는 보이지 않습니다... :?

여러분들이 제 가려움증을 시원하게 긁어주세요...
답변 기다리겠습니다. 감사합니다.

musik의 이미지

갑자기 생각난 사실인데...

아무래도 게이트웨이에서 스니핑을 하고 있는 것 같습니다 -_-;;;;
그렇다면 이 현상들이 모두 아구리가 맞아 떨어지는데....

회사에서 그동안 농땡이 쳤던 걸 누가 다 보고있었다고 생각하니.... 음...

그러고보니 장난치다가 졸지에 스니핑 탐지 툴을 만들어버린 듯 하군요... -_-;;

아무튼 모두 좋은 하루되세요~

jyj9782의 이미지

뮤직님 ^^ 저도 네트웍쪽으로 다뤄보고 싶은데요..
그 소스좀 받아볼수 있을까요..

제 쪽지함으로 좀 보내주실수 있으세요?

musik wrote:
음..

인터넷구간으로 나갈 패킷을 적당히 조립하여 놀고 있었습니다.

근데 제가 궁금한 것은... 디폴트게이트웨이의 MAC 어드레스를 영 엉뚱한 값으로 세팅해서 날려봐도 어떻게 된 일인지 외부로 패킷이 잘 나가네요? :roll:

그렇다면 엉뚱한 값의 MAC 주소를 가진 이더넷 프레임을 디폴트게이트웨이 장비가 지가 알아서 받았다는 얘긴데... 어떻게 이게 가능한지 모르겠습니다.

그것도 아니라면, 게이트웨이의 IP레벨에서 MAC 주소를 무시하고 처리한다는 얘기같은데... 그다지 합리적인 결과로는 보이지 않습니다... :?

여러분들이 제 가려움증을 시원하게 긁어주세요...
답변 기다리겠습니다. 감사합니다.

힘내세요.

Necromancer의 이미지

스위칭장비의 특성 때문일수도 있습니다.

모르는 MAC을 날리면 더미허브처럼 다 뿌려버리니까요.

Written By the Black Knight of Destruction

alwaysrainy의 이미지

신기하군요.. 저두 소스 좀 부탁드릴께요.. ^^

---------------------------------------
세계는 넓고, 할일은 많다.

NeoInTheMatrix의 이미지

흑기사님의 의견에 올인 !
스위치에서 destination lookup failure 가 발생하면 마치 broadcast packet 인양 모든 포트로 패킷을 forwarding 합니다.

How do you define real?

ixevexi의 이미지

스위칭 장비더라도
저런 일은 스니핑하지 않는 한 불가능 한듯...

예전에 TCP/IP의 대략적인 모습을 보고 과연 스니핑을 막는 것이 가능한가
생각했었습니다. 그리고 위와 같은 반 스니핑 툴이 있다는 걸 알게되면서
얼마나 신기했는지 모릅니다. 그때 여러가지 스니핑 감지 툴을 봤었는데
저거 하나밖에 기억이 안나네요 -_-
그것도 여기 KLDP에서 본거 같은데........ 혹시 아시는 분은 ^^ 답글을..

C++, 그리고 C++....
죽어도 C++

NeoInTheMatrix의 이미지

스위치는 ingress port 로 들어오는 모든 패킷을 다 받아들입니다. (ingress port 의 queue에 쌓이죠)
그후에 packet 의 destination mac 을 key 로 address table 을 검색한후 특정 egress port 로 forwarding 하는거죠.
그런데 address table 에 없는 entry (알지 못하는 mac) 이거나 braodcast mac 인 경우에 모든 port 로 내보냅니다.

How do you define real?

ixevexi의 이미지

Quote:

스위치는 ingress port 로 들어오는 모든 패킷을 다 받아들입니다. (ingress port 의 queue에 쌓이죠)
그후에 packet 의 destination mac 을 key 로 address table 을 검색한후 특정 egress port 로 forwarding 하는거죠.
그런데 address table 에 없는 entry (알지 못하는 mac) 이거나 braodcast mac 인 경우에 모든 port 로 내보냅니다.

예 맞습니다.
그래서 스위치에서 스니핑을 할려면 의미없는 맥주소를 마구 쏘아서
저 table을 엉망으로 만든후 스위치를 더미로 만들어버린다고 알고 있습니다.

그것과 이것과는 좀 다른 문제인 듯 합니다.
자신의 랜포트로(자신의 IP로) 다른 쪽 맥이 들어오더라도
그 맥에 응답을 않하는 걸로 알고 있습니다. //왜냐면 자신은 IP를 안보고
맥값만 보니까//

더미허브를 쓰는 곳에 PC를 물려놓더라도 IP가 자신이더라도 자신의
맥값이 아닐떈 응답을 할 이유가 없겠죠?

이와같은 상황에서는,
패킷이 자신의 IP로 들어오고 맥주소가 다른 곳으로 쏘았는데도
자신이 패킷에 응답을 하는 것은! 분명히 스니핑을 하고 있다고 생각합니다.
//아마 스니핑을 하는 것은 머 여러 이유가 있겠지만 트래픽 분석이나
IDS혹은 IPS 같은 툴및 장비가 있을 수도 있고요

C++, 그리고 C++....
죽어도 C++

Necromancer의 이미지

스위치에 몇 대 물려놓고 tcpdump나 기타 자작 스니퍼 좀 만들어서
돌리시는게 좋을 듯 합니다.

만일 모든 컴퓨터로 다 온다면 broadcast된 것이고, 안온다면 스위치에서 무시한
것일겁니다.

Written By the Black Knight of Destruction

valor의 이미지

라우터에 포트 설정이 promiscuous로 설정된 것이 아닐지 모르겠네요..
(스펠이 맞나?0

promiscuous가 설정되면 mac 주소에 관계없이 모든 패킷을 받아들이도록 됩니다. 마치 L2의 스위치나 브리지처럼요.

게이트웨이로 어떤 걸 쓰시는지 모르겠지만 이렇게 설정이 되면 받아들일 수는 있을 것 같습니다. 그걸 다음 네트워크로 넘길지 어쩔지는 모르겠지만요.

NeoInTheMatrix의 이미지

네.. valor 님 의견이 설득력이 있습니다.
L3 router 의 경우라면 mac 이 의미가 있겠죠.
L2 switch 에서 스위치쪽 port의 mac 은 packet forwarding 하고는 상관이 없습니다.

pc1 ------ switch ------ pc2

에서 pc1 에서 pc2 의 mac 을 destination address 로 하고 packet 을 날리면 pc2 까지 잘 날라가죠.

How do you define real?

댓글 달기

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