• 締切済み

Linuxである特定のIPアドレスから受信したパケットを破棄するモジュ

Linuxである特定のIPアドレスから受信したパケットを破棄するモジュールを作成したいのですが、TCP/IPとドライバ間のインターフェースであるネットデバイスを操作する方法がわかりません。もし ご存知の方がいたら、教えて頂けますでしょうか。また他の方法をご存じの方、あるいは何か参考になる情報をお持ちの方、是非ご教授願います。

みんなの回答

  • nolix
  • ベストアンサー率19% (110/572)
回答No.3

ipchainsかiptablesで可能です。 kernelで上記は変わります。 2.4系は両方使えたかもしれません。 スループットは、iptablesが良いですね。 tcpdumpで確認必須です。 port,tcp,udp,icmp,synフラグ等管理可能です。

cassiopeia1989
質問者

補足

回答ありがとうございます!僕もiptablesに似たプログラムを作ろうと思ってソースを解析したのですが、どうもライブラリを使っているみたいでパケット処理の内容がわかりませんでした。

  • t_nojiri
  • ベストアンサー率28% (595/2071)
回答No.2
cassiopeia1989
質問者

補足

回答ありがとうございます!下の二個のwebは参考になりそうです!!助かりました。

  • seednyan
  • ベストアンサー率28% (448/1568)
回答No.1

カーネル2.26以上(だったかな?)であれば、iptablesコマンドで同様な処理ができたと思いますが。。。 参考例として、インターフェース eth0へのipアドレス 192.168.4.1からのパケットを拒否 iptables -A INPUT -i eth0 -s 192.168.4.1/32 -j DROP だったと思います。

cassiopeia1989
質問者

補足

iptablesを使ってしまえばそれまでなんですが、物好きでしてiptablesに似たプログラムを作ろうと思ったんです。だけどライブラリを使っているみたいで、肝心の処理がわかりませんでした。もうちょっと頑張ってみます。回答ありがとうございました!

関連するQ&A