Linux 3.18のrc(自分が気付いたのは3.18-rc2)でiptablesが動かないからkvm環境等々が動かせなくて悩んでたんだけど、とりあえずはpatchを見つけたので解決。 パッチは(nf_reject_ipv4: module license 'unspecified' taints kernel - Patchwork)です。
iptabelsが動いていなかった原因は見ての通りでip_local_out_skというシンボルが見つからなかったから。
masami@saga:~/linux-kernel/net (vanilla)$ journalctl -xn -- Logs begin at Fri 2013-11-01 02:34:09 JST, end at Wed 2014-10-29 00:43:43 JST. -- Oct 29 00:29:35 saga sudo[17236]: pam_unix(sudo:session): session opened for user root by (uid=0) Oct 29 00:29:35 saga iptables-restore[17239]: iptables-restore: line 27 failed Oct 29 00:29:35 saga kernel: nf_reject_ipv4: Unknown symbol ip_local_out_sk (err 0) Oct 29 00:29:35 saga systemd[1]: iptables.service: main process exited, code=exited, status=1/FAILURE Oct 29 00:29:35 saga systemd[1]: Failed to start Packet Filtering Framework. -- Subject: Unit iptables.service has failed -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit iptables.service has failed. -
この関数はnet/ipv4/ip_output.cにあってEXPORT_SYMBOL_GPL(ip_local_out_sk);とエクスポートされているはずなんだけど何故かシンボルが見つからずという状態。
で、先のパッチを見つけたので当ててみたら無事にiptalbes起動しました。
原因はすごい単純でmodulesのライセンス(MODULE_LICENSE("GPL");)が抜けていたからというもの。いやー、MODULE_LICENSEが無いとこんなことになるんですね φ(..)メモメモ
サーバ/インフラ徹底攻略 (WEB+DB PRESS plus)
- 作者: 伊藤直也,片山暁雄,平山毅,舟崎健治,吉荒祐一,今井雄太,八木橋徹平,安川健太,宮下剛輔,田中慎司,久保達彦,道井俊介,飯田祐基,桑野章弘,松浦隼人,中村俊之,福永亘,杉山仁則,WEB+DB PRESS編集部
- 出版社/メーカー: 技術評論社
- 発売日: 2014/10/30
- メディア: 大型本
- この商品を含むブログ (2件) を見る