問題
今日、同じ問題に遭遇しました。そこでは、火星のパケットが私のカーネルログをあふれさせました。すべての火星のパケットは、同じパブリックIPアドレスeth0
から同じパブリックIPアドレスまでですeth0
(実際のIPとヘッダーは削除されます)。
IPv4: martian source x.x.x.x from x.x.x.x, on dev eth0
ll header: 00000000: aa bb cc dd ee ff gg hh ii jj kk ll 08 00
いくつかの調査の後、私はその理由がll header
火星のパケットに隠されていることに気付きました。
理論
イーサネット接続でこれを想定すると、ll header
実際には、宛先MACアドレス、送信元MACアドレス、およびパケットの残りの部分のタイプを示すIDを含むイーサネットタイプIIフレームの開始部分が表示されます。
ご覧のとおり、最初の6バイトは宛先MACアドレス、次の6バイトは送信元MACアドレス、最後の2バイトのコードです。一般的なコードは次のとおりです。
08 00
:IPパケット
86 dd
:IPv6パケット
08 06
:ARPパケット
説明
私の例に戻ります。
IPv4: martian source x.x.x.x from x.x.x.x, on dev eth0
ll header: 00000000: aa bb cc dd ee ff gg hh ii jj kk ll 08 00
これは私たちに伝えます、
- 同じ送信元および宛先IPアドレスでパケットが受信されました。
- 送信元
GG:HH:II:JJ:KK:LL
は、知らないMACアドレスです。
- 宛先はで
AA:BB:CC:DD:EE:FF
、これは自分のMACアドレスです。
- IPパケット(
08 00
)でした。
パケットの送信元IPアドレスと宛先IPアドレスが同じ場合、同じネットワークインターフェースで送信する必要がありますが、送信元と宛先のMACは異なります!どうしてそれが可能ですか?
したがって、パケットが火星から来ていること、ルーティングの問題があるか、ネットワーク内のマシンが構成されているか、誰かがIP / MACアドレスをスプーフィングしようとしていることは明らかです。次のステップでは、問題の送信元MACアドレスを確認します。