DNSの仕組みについて分からないので教えて頂きたいです。
現在、マスターとスレーブサーバを構築しており、外向きの
名前解決など動作的には正常に動作していると思われます。
サーバはCentosで構築しており、iptablesで設定しています。
iptablesの一部で以下のように設定をしているのですが・・・
-------------------------------------------------------------------------
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
-------------------------------------------------------------------------
1.まず、TCP/UDP共にポートを開けておかないといかないと思うのですが、送信元
はANYで許可しておかないとダメでしょうか?
上位DNSサーバからの参照などに使われますよね?
もちろんbindの設定で、ゾーン転送はスレーブサーバへのみ許可しています。
2.スレーブサーバへのゾーン転送もできているのですが、マスタサーバ側のiptables
のログに下記のようなものが残っています。
送信元IPはスレーブサーバのIPでUDP送信ポート53が使われているようなのですが
送信ポート53は何に使われているのでしょうか?宛先ポート53との違いは?
--------------------------------------------------------------------------
SRC=送信元IP DST=宛先IP LEN=72 TOS=0x00 PREC=0x00 TTL=62 ID=20999 PROTO=UDP SPT=53 DPT=47046 LEN=52
--------------------------------------------------------------------------
スレーブの53ポートからの通信がDNSの動作に必要なものであれば、iptablesのルールを追加
しようと思います。
情報が少ない場合は補足できる範囲で補足させて頂きます。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
>1.まず、TCP/UDP共にポートを開けておかないといかないと思うのですが、送信元
> はANYで許可しておかないとダメでしょうか?
ここで言っている送信元とは、送信元IPアドレスでしょうか、送信元ポート番号でしょうか?
UDPは、
・送信元IPアドレスであればDNSリクエストの送信元は不特定ですのでANYである必要がありますね。
・送信元ポート番号であれば、基本ANYでいいと思いますがもっと厳密にするのならば53,1024:65535という指定になるかと思います。
TCPは、
・ゾーン転送のみの使用なので送信元IPアドレスをスレーブサーバのみの固定してもいいでしょう。
・送信元ポート番号はUDPと同様
あとiptablesの設定ではなくBIND側の設定であり既に対応済みかもしれませんが、不特定からのDNSリクエストを受けますので、外部からのDNSクエリリクエストには、自ドメインに対する問い合わせしか応答しない設定も重要かと思います。
>2.スレーブサーバへのゾーン転送もできているのですが、マスタサーバ側のiptables
> のログに下記のようなものが残っています。
プロトコルの中身がわからないので確実ではありませんが、
これは、マスターからスレーブへのDNS NOTIFYリクエストに対する応答だと思われます。(DNSクエリリクエストの応答の可能性も多少あるかも)
必要なものですが、そもそもDNSレスポンスに対するケアが示された情報には見当たりません。
これでは上位DNSに対する再帰問い合わせの応答が受け取れないように思います。
>送信ポート53は何に使われているのでしょうか
DNSリクエストに対する応答は基本このような通信になるはずです。
また、一般的にはDNS クエストの送信元ポート番号はランダム(1024:65535)で宛先ポート番号が53になりますが、
古いDNSサーバや、ファイアウォールの関係で送信元ポート番号を53に固定する場合も少数だと思いますがあります。
maesenさん回答ありがとうございます。
>>1.まず、TCP/UDP共にポートを開けておかないといかないと思うのですが、送信元はANYで許可しておかないとダメでしょうか?
>ここで言っている送信元とは、送信元IPアドレスでしょうか、送信元ポート番号でしょうか?
ここでは送信元IPアドレスでした。ただ、DNSリクエストの送信元が不特定なのでANYで良いですね。
>あとiptablesの設定ではなくBIND側の設定であり既に対応済みかもしれませんが、不特定からのDNSリクエストを受けますので、外部からのDNSクエリリクエストには、自ドメインに対する問い合わせしか応答しない設定も重要かと思います
named.confの「recursion no;」の設定ですよね。この辺りは設定済みです。実際に外部からは自ドメイン以外の名前解決はできません。
>>2.スレーブサーバへのゾーン転送もできているのですが、マスタサーバ側のiptablesのログに下記のようなものが残っています。
>プロトコルの中身がわからないので確実ではありませんが、これは、マスターからスレーブへのDNS NOTIFYリクエストに対する応答だと思われます。(DNSクエリリクエストの応答の可能性も多少あるかも)
>必要なものですが、そもそもDNSレスポンスに対するケアが示された情報には見当たりません。これでは上位DNSに対する再帰問い合わせの応答が受け取れないように思います。
NOTIFYリクエストという線で検索してみたところ、なんかそれっぽいことが書いてあるPDFを発見しました。
http://www.tatsuyababa.com/NW-DNS/NW-200309-DNSQ …
(最後のページの表6)
NOTIFYについて詳しくは分からないのですが、これってマスターのゾーンファイルが更新されたことを更新通知として送信するものですよね?
管理しているサーバではマスターからスレーブへのゾーン転送は定期的に行われているようなのですが現状のままで問題無いのでしょうか^^;よく分かりません。
ただ、必要なモノっぽいのでiptablesにて送信ポートUDP/53で送信元IPをスレーブサーバとして追加しておきます。
No.3
- 回答日時:
>管理しているサーバではマスターからスレーブへのゾーン転送は定期的に行われているようなのですが現状のままで問題無いのでしょうか^^;よく分かりません。
ゾーン転送関連の解説を見て頂ければわかるとおもいます。
参考サイト(これ以外にも解説しているサイトはあると思います)
http://www.atmarkit.co.jp/flinux/rensai/bind905/ …
DNS NOTIFYはゾーン転送の即時性を高めるもので、マスタの更新によるスレーブとのゾーン情報の差異をごく短期間に出来ることになります。
定期的なゾーン転送が無くなるわけではないので(意図的に設定しなければ)、定期更新の間隔の間はゾーン情報に差異があることをを容認出来れば、現状でも問題無いということになると思います。
ただ、ファイアウォールでブロックするまでは必要はないと思います。
ブロックするのならばBINDをNOTIFY自体を出さないような設定にすべきと思います。
No.2
- 回答日時:
DNSのクエリの場合、情報量が多いとUDPからTCPに切り替えて接続します。
この動作で、某ISP(?)のDNSサーバーでの名前解決に問題が起きたのは記憶に新しいです。
FireWallでは、TCPもUDPも開けておくのが一般的です。
転送しないからTCPは開けないと言うエンジニアがいますが、それではRFCに準拠していません。
そのDNSサーバーが内部からクエリに対し
外部の名前解決を請け負っているのであれば問題が生じるでしょう。
一般的なDNSサーバーは送信ポートも受信ポートも53でした。
この仕様がセキュリティ上問題になり、ソースポートを変更している場合もありますが
基本はソースポートも53と思って良いでしょう。
pakutiさん回答ありがとうございます。
>DNSのクエリの場合、情報量が多いとUDPからTCPに切り替えて接続します。
この動作で、某ISP(?)のDNSサーバーでの名前解決に問題が起きたのは記憶に新しいです。
FireWallでは、TCPもUDPも開けておくのが一般的です。
一定パケット以上ではTCPが使われるみたいですね。ということで現状のまま、UDP/TCPの53ポートは開けておきます。
>一般的なDNSサーバーは送信ポートも受信ポートも53でした。
この仕様がセキュリティ上問題になり、ソースポートを変更している場合もありますが
基本はソースポートも53と思って良いでしょう。
ログを見る限りソースポートが53で通信しに来ているのがスレーブサーバのIPしかないので、maesenさんがおっしゃるようにNOTIFYリクエストなのではないかと思っています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux iptablesを設定するとメール送信処理が遅くなる!? 6 2022/06/07 01:11
- UNIX・Linux Ubuntuサーバーでメールを受信できない 7 2022/08/23 20:55
- VPN DNS「8.8.8.8」とは何なのでしょうか? 固定 IP アドレスで光回線の代わりに使えますか? 4 2022/10/17 16:30
- サーバー 別サーバに構築したApache+Tomcatの連携について 2 2023/03/06 23:23
- VPN 無料のwifiはなぜ危険性高い? VPN プライベートDNSモードにすれば安全? 2 2022/06/04 18:23
- 固定IP Win11 アダプター設定変更にイーサネットが表示されない 1 2022/12/03 18:31
- Windows 10 リモートデスクトップ接続 1 2022/07/12 14:30
- ルーター・ネットワーク機器 YAMAHAルータ設定について 1 2022/09/03 16:31
- その他(コンピューター・テクノロジー) 「プロトコル」の定義について 5 2023/04/16 13:13
- ファイアウォール ポート開放で利用可能なTCP一覧の中に利用したいTCPが入ってない場合どうすればいいのでしょうか? 2 2022/09/12 10:31
このQ&Aを見た人はこんなQ&Aも見ています
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
hostsファイルで8080ポート指定
-
VLANインターフェースがDownす...
-
25番ポートが使えない場合のメ...
-
DNSとiptablesについて
-
http、httpsをブラウザで見る場...
-
PPPoE対応のスイッチングHUBは...
-
FTPサーバのポートを変更したら...
-
FireTV YouTUBE
-
成端と整端どっち?
-
SW、HUBのIPアドレスの調べ方
-
ケーブルの芯の数について
-
社内ネットワークには繋がるが...
-
イーサネットケーブルとLANケー...
-
NNTの代理店が「モデムを無償で...
-
100Mと1Gのネットワーク機器の...
-
USB タコ足をするとスピードは...
-
Win PCがハブを介すと充電でき...
-
外付けHDDをハブ利用で2台の...
-
一軒家のインターネット環境に...
-
どのHUBのポートに刺さっている...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
hostsファイルで8080ポート指定
-
VLANインターフェースがDownす...
-
http、httpsをブラウザで見る場...
-
【VLANとセキュリティについて...
-
FTPサーバのポートを変更したら...
-
NAPTでのポート番号変換について
-
PPPoE対応のスイッチングHUBは...
-
管理ポートとは?
-
自宅サーバーで外部からHP閲覧方法
-
Ciscoルータのコンソールポート...
-
25番ポートが使えない場合のメ...
-
TCP 445, 5554, 9996を塞ぐとは
-
DNSとiptablesについて
-
1つのポートに複数のVLAN...
-
FTPの為のルーター設定について
-
FreeBSDでのポート開放について
-
会社内からWinnyの使用を防ぐ方...
-
centreCOM FH708EXLはリピータ...
-
PINGが通らない
-
WEBメール(imap)とポート開放
おすすめ情報