ip_fastforward

FreeBSD5.3からIP Fastforward(IPv4)という機能があるらしく,これを有効にすると早く処理できるらしい.
http://people.freebsd.org/~andre/FreeBSD-5.3-Networking.pdf

# sysctl net.inet.ip.fastforwarding=1

ソースはsys/netinet/ip_fastforward.cで,コメントが非常に丁寧なので中身見ればOK.あとはしゅううさんの記事見ればOK.http://d.hatena.ne.jp/syuu1228/20081020

やっていることは,パケットの正常性確認,自宛処理,NAT/FW,ネクストホップ探索,TTL減算・チェックサム更新とか.
この内,NAT/FWはpfil_run_hooks()に,ネクストホップ探索はip_findroute()に丸投げ.
あと,自宛確認をin_localip()でやってたりもする.