totofugaのブログ

ネットワークとかc言語、perlの話。

c言語

linuxカーネルのpid管理(取得周り)

カーネルのpid管理と取得周りを調べてみた PID名前空間 Linuxではpid_namespace(詳しくはman 7参照)に対応しているため、 1つのプロセスに対して複数のプロセスIDを複数持てるようになっている。 pid_namespaceは階層構造になっていて、 子のプロセスIDは同…

linuxカーネルのIPフラグメント処理(1)

IPフラグメント処理 第一フラグメント便乗攻撃を調べるためlinuxのIPフラグメント処理を調べてみた。 長くなりそうなのでとりあえずinet_fragmentのメモ ソースコード net/ipv4/ip_fragment net/ipv4/inet_fragment inet_fragmentはプロトコルに依存しない処…

Unboundのmsgキャッシュについて

msgキャッシュとは ユーザからのリクエストをkeyとしてレスポンスを保存するためのハッシュ keyがquery_infoでvalueがreply_infoとなる。 ハッシュ構造とキーをまとめて管理できるように msgreply_entryという構造体にまとめられている。 reply_infoとub_pac…

unboundのCNAME処理

処理内容 権威からCNAMEが返ってきた場合、 キャッシュサーバーでは別名を引きに行かなくてはいけない。 仮に下記のような登録があった場合、キャッシュサーバーにて cname.jp.への問い合わせとanswer.jpへの問い合わせを行い、 それらのレコードを合成して…