※2017年7月19日追記:こちらの記事は内容をアップデートして会社の技術ブログに転載しました。今後は以下のURLを参照してください。
http://blog.interstellar.co.jp/2017/07/gcpcompute-enginevpn.html
今日も元気に眠いです。
外は涼しくなったのに、自宅マンションは工事中で窓が開けられず、エアコンかけないと寝られないというなんともエコでない状況の今日このごろ、皆さんいかがお過ごしでしょうか。
だいぶ前に、Google Cloud Platform上のインスタンスで/etc/sysctl.confに書いた内容が反映されないというので悩んでおりました。
[GCP] Google Cloud PlatformにOpenVPNサーバーを立ててみた
記事の日付見たら4月じゃないですか…。
4ヶ月も放置しておりました。
まあ、サーバーは一度起動してしまえばシャットダウンすることはそうないので、あまり問題にはならないんですが、そうも言っていられなくなってきたので調べてみたら、なんてことはない原因でした。
これまで時間があまりない中で設定していたので、すっかり見落としていたんですが、/etcの下にsysctl.confがありますが、その隣に/etc/sysctl.dなんてディレクトリがあるじゃないですか。
ふとその中をのぞいてみたら、11-gce-network-security.confなんてファイルがありました。
おや?と思い中を見てみると、
net.ipv4.ip_forward=0
としっかり設定されてるじゃないですか。
つまり、これまで設定が反映されていないと思い込んでいたのは間違いで、実際にはsysctl.confの内容は設定されているけど、11-gce-network-security.confによって上書きされていたのでした。
気がついてしまえば簡単な事なんですが、こんなのに4ヶ月もかかったのかと思うと脱力。
早速/etc/sysctl.d以下に99-vpn-router.confというファイルを作って、中に
net.ipv4.ip_forward=1
これで11-gce-network-security.confよりも99-vpn-router.confが後で読み込まれるので、net.ipv4.ip_forwardの値が上書きされるはず。
実際に再起動して試したら、ちゃんと設定されました。
やれやれ…。
そんな脱力感の中、今回はここまで。