dest-ip、source-ipなどの着信パケット情報を確認できるLinux
2.6を書きたいと思います。その後、パケットが HOOK に到達するとすぐにこれらの情報を処理するアプリ(アプリ) にこれらの情報を渡します。netfilter
module
IP
user space
Socket
私は2つの方法を試してみたい:
1. netfilter
モジュール内でfifo
構造体行を作成し、パケットが に到達するたびhook
に、パケット情報を fifo に入れます。/proc/example
そしてfilesystemの助けを借りて。ユーザー空間アプリがファイルを読み取るたびに/proc/example
、FIFO ヘッドからパケット情報が取得されます。
私はkernel
プログラムの初心者です。このプログラムは私のカーネルを数回クラッシュさせます。-_-! この方法は可能ですか?
2. netfilter モジュール内で char デバイスを作成し、ユーザー空間アプリがこの char デバイスからパケット情報を読み取ります。しかし、パケットをできるだけ早く確実に取得する方法はまだわかりません。パケットが netfilter フックに到達したときに、カーネルが何らかの信号をユーザー空間アプリに送信し、ユーザー空間アプリがパケット情報を選択しますか?
どうもありがとうございました。