set dns host schedule, exec dns refresh, set dns proxy



 ◆ ポリシーにFQDNを指定した場合の注意点

 SSGにset dns hostコマンドでDNSサーバを指定している場合、ポリシーにIPアドレスではなくFQDNを
 指定している場合でも、名前解決を行うことにより通信許可や拒否の判断を行えます。SSGが名前解決を
 行うと自身のDNSステータステーブルに名前解決(ドメイン名とIPのマッピング)をキャッシュします。

 SSGは以下の場合に指定したDNSサーバをチェックして、DNSテーブルにある全エントリをリフレッシュ。

 @ HAフェールオーバーが発生した場合
 A set dns host scheduleコマンドによるスケジュール実行
 B exec dns refreshコマンド実行

 set dns host scheduleコマンドでは4〜24時間間隔でしかスケジュールを実行できません。例えば以下
 のように設定すると0時,4時,8時,12時の間隔でDNSテーブルにある全てのエントリをリフレッシュします。


 SSG-> set dns host dns1 8.8.8.8
 SSG-> set dns host schedule 00:00 interval 4


 つまり、この4時間はキャッシュ情報を持ち続けるので、4時間以内にドメイン名に対するIPアドレス情報が
 変更になった場合は通信ができなくなります。その場合は手動で exec dns refresh を実行することにより
 新たな名前解決情報が得られるので通信できるようになります。ドメイン名に対するIPアドレス情報が変更
 することは頻繁にある訳ではありませんが、FQDNを指定したポリシーはこのような問題点があるので注意!

 SSG-> exec dns refresh


 ◆ DNSプロキシの設定

 クライアントPCがSSGをDNSサーバに指定して名前解決をしたい場合は、例えば以下のように設定します。
 下記コマンドの前提としてクライアントPCはe0/5配下のネットワークに存在している事、ISPから取得した
 DNSサーバのIPアドレスは「1.1.1.1」であることです。下記設定で、SSGはDNSプロキシとして動作します。


 SSG-> set interface ethernet0/5 proxy dns

 SSG-> set dns proxy
 SSG-> set dns proxy enable
 SSG-> set dns server-select domain * outgoing-interface ethernet0/0 primary-server 1.1.1.1


 プライマリDNSサーバを1.1.1.1、セカンダリを2.2.2.2として、そのFailoverを有効化したい設定は以下です。
 SSG5-> set dns server-select domain * outgoing-int ethernet0/0 primary-server 1.1.1.1 secondary-server 2.2.2.2 failover

 なお、set dns server-select domainというコマンドは、本来「選択したドメイン名のクエリ―を特定のDNS
 サーバに転送する」という使い方として有用です。これにより関連のないサービス要求の処理をDNSサーバが
 行わなくて済むという利点、トラフィックの保護という利点があります。SSGでのDNSプロキシはドメイン名
 の一部または全てに従いDNSクエリーを特定のDNSサーバに転送する、というのが本来の活用方法ということ。

 例えばドメイン名「*.abc.com」が含まれたFQDNに関連づけられたDNSクエリ―はトンネルI/F (tunnel.1)
 を経由して、192.168.0.1 のDNSサーバに問い合わせさせる設定は以下です。IPsec-VPN接続の構成を想定。
 SSG5-> set dns server-select domain .abc.com outgoing-interface tunnel.1 primary-server 192.168.0.1

 そして、その他のDNSクエリ―全て(*)はe0/0を経由し「8.8.8.8」のDNSサーバに問合わせする設定は以下。
 SSG5-> set dns server-select domain * outgoing-interface ethernet0/0 primary-server 8.8.8.8


 ※ DHCPサーバでDNSサーバのIPアドレスをクライアントに配布する場合はDNSプロキシの設定は不要です。



Juniper SSG - ScreenOS 設定コマンド解説

Copyright(C) 2002-2024 ネットワークエンジニアとして All Rights Reserved