NA(P)Tルーター
最近CentOSをお勉強し始めた友人K。
と言うか、拙生がそのように仕向けハッパを
かけているのですが。。。
NATルーターに苦戦しているらしい。
CentOS7ならなんてことないのに6で
始めちゃったので7より少々面倒です。
面倒と言っても各NICの設定がちゃんとしてあり
sysctl.confの設定で
net.ipv4.ip_forward = 1
細かいオプション的な設定を除けばiptableで
-A POSTROUTING -o (*) -j MASQUERADE
(*)はグローバルIPアドレス側のNIC名
とするだけなんでさほど難しくないと思うんですけど。
よく聞くとiptableで
-A POSTROUTING -o eth0 -j MASQUERADE
としたとのことですが、PPPoEで接続するために
すでに設定がしてあるとのこと。
それではダメです。
-A POSTROUTING -o ppp0 -j MASQUERADE
としなくてはいけません。
物理的なNICはeth0であってもPPPoEを設定すると、
インターフェイスはあくまでppp0であり、eth0は
PPPoEに利用されるためのものとなります。
eth0やppp0は友人Kの環境です。
インターフェース名は必ずifconfigで表示される
ものでなくてはいけません。
NATルータに関してはCentOS7だと楽ちんです。
Firewall設定でオプション⇒標準ゾーンの変更から
内向きのNICのゾーンをpubulicからinternalに、
外向けNICを選択して接続ゾーンをexternalにしてやるだけです。
右ペインのタブにあるマスカレーディングもいじりたく
なりますが、ここのチェックは必要ありません。
もちろんコマンドでも同様にできます。
# firewall-cmd --set-default-zone=internal
# firewall-cmd --zone=external --change-interface=インターフェース名
NATではない!?@基本編
CentOSではNAPT方式が採用されており、IPマスカレード
と呼ばれています。
なので、NATルータではなくNAPTルータが正解かも。(笑
基本的なことを再確認@いくつかあるNAT
六角NAT
そんなのありません!六角NUTならありますけど。
最初からふざけちゃいました。。。スンマソン
静的NAT
グローバルとプライベートIPアドレスが1:1の変換。
動的NAT
n個のグローバルとm個のプラーベートIPアドレスの変換。
プラーベート側で接続が必要なときに空いているグローバル
IPアドレスに変換。
プライベート側の同時最大接続可能数はn個までです。
*セグメントでは先頭(ネットワーク)と最後(ブロード
キャスト)のIPアドレスは使えないので正確にはn-2個
NAPT(IPマスカレード)
プライベートIPアドレスとポートナンバーをグローバルIP
アドレスのポート番号に変換することで、グローバルIP
アドレスが一個であっても、ポート番号を併用により
1:mが可能になります。
注:CentOSのNAPTはIPv6には対応していません。
CentOS7ではディフォルトでNA(P)Tルーターとしての
ほとんどの機能設定が施されているために、上記のような
簡単な設定で機能してしまうのです。
最近のコメント