CentOS 7.3 + firewalldで簡単にルータを作成

スポンサーリンク

今回は、CentOS 7.3とfirewalldを利用して、linuxでルータを構築します。

背景

社内の検証環境で、IPアドレスが案件や社員ごとに割り振られていない場合、仮想ホストを複数立てた時に、IPアドレスが重複したりということがあったりしますよね(IPの管理って以外にやっていないところありますよね)
仮想ホストを立てるたびにIPが重複したりするのを調べるのもめんどくさいので、プライベートなネットワークが欲しいわけです。なので、Linuxでサクッとルータを作ってみましょう。

検証環境

  • 環境
    • hyper-v上CentOS 7.3
  • ネットワーク
    • 192.168.1.0/24(パブリック)
    • 192.168.5.0/24(プライベート)

構築

  • ホストを作成する際に、NICを2個作成し、それぞれに任意のIPアドレスを振り分けてください。
    • eth0 192.168.1.10/24
    • eth1 192.168.5.1/24 → プライベートネットワークのゲートウェイになります。

    ※ ESXiやhyper-Vの際は、ネットワークの作成と接続もお忘れなく!

  • プライベート側のNICのzoneの変更(今回,ファイアフォールはすべて開けます)

# nmcli c mod eth1 connection.zone trusted
  • eth0側(パブリック)にIPマスカレード(NAPT,PAT)の設定をします。
# firewall-cmd --zone=public --add-masquerade --permanent
# firewall-cmd --direct --add-rule ipv4 nat POSTROUTING 0 -o eth1 -j MASQUERADE
  • fiwawalldをリロード
firewall-cmd --reload
  • カーネルパラメータのパケットのフォワードが有効になっているかを確認する
# cat /proc/sys/net/ipv4/ip_forward
1

接続テスト

  • public側の端末で、スタティックルートを設定してルータのプライベート側にpingを飛ばして帰ってくれば設定完了です。

今回、ファイアフォールをすべて開けているので、簡単でしたよね。
次回は、指定のポートだけをフォワードするようなこともやりたいと思います。

タイトルとURLをコピーしました