Solaris で NAT ルータ : やっぱり Sun がスキ! やっぱり Sun がスキ!

やっぱり Sun がスキ!

http://blogs.sun.com/yappri/date/20061126 2006年 11月 26日 日曜日

Solaris で NAT ルータ

Solaris 10 にデフォルトでインストールされている Solaris IP Filter を使ってNAT ルータを作る事ができます。 シンプルな構成であれば、以下のように簡単に設定可能です。

例えば、以下の環境で、LAN 内部の全てのマシンからの外部へのアクセスを、
10.14.3.168 というアドレスで行いたい場合を考えます。

まず、IP Filter 機能を有効化するため、NAT ルータにするマシン上の
/etc/ipf/pfil.ap ファイルを編集し、 使用するインタフェースの行のコメントを外します。
eri0 と ce0 をフィルタリングしたいならば、
...
#qfe    -1      0       pfil
eri    -1      0       pfil
ce     -1      0       pfil
#bge    -1      0       pfil
...
次に、/etc/ipf/ipnat.conf を作成して、NAT のルールを定義します。
ce0 から出て行く全てのパケットの送信元アドレスを 10.14.3.168 に変換するには
map ce0 192.168.128.0/24 -> 10.14.3.168/32 portmap tcp/udp 20000:30000
map ce0 192.168.128.0/24 -> 10.14.3.168/32
1行目は、TCP と UDP 用、2行目は ICMP (ping等) 用です。
編集後、リブートし、パケット転送を有効化し、ipfilter を起動すると、NAT ルータが完成です。
# init 6
# svcadm enable network/ipfilter
# routeadm -u -e ipv4-forwarding
しっかり NAT が動作しているか、確認してみましょう
NAT ルータマシン上で下記のコマンドを実行してパケットを監視しながら
# snoop -V -r -d eri0 icmp or port telnet
# snoop -V -r -d ce0  icmp or port telnet
LAN 内部のクライアントマシンから ping や telnet をしてみましょう。
% ping (ターゲットマシンのIP)
% telnet (ターゲットマシンのIP)
IP アドレスが 書き換えられていたり、ポート番号が変換されていたりする様子を
読み取る事ができます。

このほかにも、IP Filter は NAT での静的ポートマッピングや、 パケット通過・破棄などの
ファイアウォールとしての機能も備えており、 システムに合わせて柔軟な設定が可能です。

投稿されたコメント:

コメント
  • HTML文法 不許可