自作クラスタ計算機:ufwでのipマスカレードの基本設定
This is an old revision of the document!
Table of Contents
概要
- プライベートLAN内のコンピュータを外部のネットワークにつなぐには、ルータでプライベートIPアドレスをグローバルIPアドレスに変換するNAPT (Network Address Port Translation) が必要です。
- Linuxではこの技術のことをIPマスカレードと呼びます。
- より詳しく知りたい方は以下のサイトを参照してください。
- ここではIP tablesのフロントエンドであるUFWを使用して設定します。
設定手順
作業はすべて管理ノードで行います。
IPフォワードの設定
インターネットにつながったLANポートと、プライベートLANにつながったLANポートはそれぞれ独立です。 この2つをつなげるのがIPフォワードです。
管理ノードのIPフォワードを有効にします
$ sudo nano /etc/default/ufw
- ufw
(略) DEFAULT_FORWARD_POLICY="ACCEPT" (略)
- 19行目にあるDROPをACCEPTに書き換えます。
$ sudo nano /etc/ufw/sysctl.conf
- sysctl.conf
(略) net.ipv4.ip_forward=1 (略)
- 10行目にあるのをアンコメントします。
IPマスカレードの設定
UFWを設定します。 before.rulesの最後に以下のように追加します。
$ sudo nano /etc/ufw/before.rules
- before.rules
(略) # don't delete the 'COMMIT' line or these rules won't be processed COMMIT # NAT table rules *nat -F :POSTROUTING ACCEPT [0:0] -A POSTROUTING -s 192.168.0.0/24 -o enp1s0f0 -j MASQUERADE COMMIT
enp1s0f0はインターネットに繋がっているポートのデバイス名です。 自分の環境に合わせて直してください。
設定をUFWに反映させます
$ sudo ufw reload
- 設定を間違えているとネットにつながらなくなるので、そのときはUTWを止めてやり直しましょう
$ sudo ufw disable
計算ノードがインターネットにつながったかどうかを、計算ノードのターミナルから ping を使って確認します(IPアドレス 8.8.8.8 はGoogleの無料DNSサーバー)
$ ping 8.8.8.8 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=55 time=2.37 ms 64 bytes from 8.8.8.8: icmp_seq=2 ttl=55 time=2.17 ms ...
- pingコマンドはCtrl+Cで終了します
インターネットに繋がったら、すぐにOSをアップデートしましょう
$ sudo apt update $ sudo apt upgrade -y $ sudo reboot # 必要に応じて再起動
自作クラスタ計算機/ufwでのipマスカレードの基本設定.1783362544.txt.gz · Last modified: 2026/07/07 03:29 by koudai
