ホームページ  >  記事  >  バックエンド開発  >  bind9 f&q_PHP チュートリアル

bind9 f&q_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:33:561041ブラウズ

この記事は、BIND メイン Web サイト http://www.isc.org/products/BIND/FAQ.html の記事を翻訳したものです。これらの問題は非常に典型的なものであり、BIND 9 ユーザーの日常のメンテナンスと管理に大きな助けとなる可能性があると言えます。

1. Linux 2.2.x で --enable-threads オプションを使用してコンパイルされたバインド プログラムを使用すると、-u パラメーターが機能しないのはなぜですか?
回答: Linux スレッドは、Posix スレッド (pthreads) 標準を完全には実装していません。特に、setuid() はプロセス全体ではなく、現在のスレッドでのみ機能します。この制限のため、Linux 上の BIND 9 は、サポートされている他のシステム プラットフォームのように setuid() を使用できません。 setuid() は、スレッドの開始後にのみサーバーが予約ポートのリッスンを開始できるため、スレッドの作成前に呼び出すことはできません。
2.2.18 または 2.3.99-pre3 以降のカーネルの場合、setuid() を呼び出した後も可用性を維持できます。これにより、BIND 9 は予約されたポートにバインドする機能を維持しながら、setuid() をより早く呼び出すことができます。これは Linux の特別な扱いです。
2.2 カーネルでは、BIND 9 は多くの root 権限を放棄するため、権限を放棄しない root プロセスよりも安全になります。
Linux スレッドがすでに正常に動作している場合、この制限は存在しません。
ユーザーは --disable-threads オプション (これがデフォルトのオプション) を使用して BIND9 をコンパイルでき、これにより非スレッド バージョンが生成されます。ユーザーは -u オプションを使用できます。

2. 名前付きログに「TTL が指定されていません - 代わりに SOA MINTTL を使用しています」という警告メッセージが表示されるのはなぜですか?
回答: ゾーン ファイルは RFC1035 標準に準拠していません。この問題を解決するには、2 つの方法を使用できます:
1) ゾーン ファイルの先頭に TTL を定義する行を追加します (例: $TTL 86400)
2) ゾーン ファイルの最初のレコードに TTL フィールドを含めます。 : 例 .com。86400 IN SOA ns hostmaster

3. Linux 上に 5 つ (またはそれ以上) の名前付きコピーが表示されるのはなぜですか?
回答: 各 Linux スレッドも ps の下にプロセスのように表示されます。一般に、実行中のスレッドの数は n+4 です (n は CPU の数を表します)。使用されるメモリ量は累積の原則に従っていないことに注意してください。各プロセスが 10M のメモリを使用する場合、すべてのスレッドは合計 10M のメモリしか使用しません。

4. Linux システム上で BIND 9 を root として実行しても、設定ファイルまたはゾーン ファイルにアクセスすると「アクセス許可が拒否されました」エラーに関するログが表示されるのはなぜですか?
回答: Linux では、BIND 9 は起動時に、他のユーザーが所有するファイルを開く権限を含むほとんどの root 権限を放棄します。したがって、サーバーが root として実行されている場合は、構成ファイルとゾーン ファイルも root が所有する必要があります。

5. 「dns_zone_load: ゾーン foo/IN: マスター ファイル バーのロード中: スペースが不足しました」のようなエラー メッセージが表示されるのはなぜですか?
A: これは通常、TXT レコード内の引用符が欠落していることが原因で発生します。すべての TXT レコードに完全な引用符が含まれていることを確認してください。

6. Linux でマルチスレッドの名前から使用可能なコア ファイルを生成するにはどうすればよいですか?
A: Linux カーネルが 2.4.7 以降の場合、マルチスレッド コア エクスポート (ダンプ) が利用可能です (つまり、正しいスレッドがエクスポートされます)。それ以外の場合、2.2 カーネルを使用している場合は、contrib/linux/coredump-patch にあるカーネル パッチを適用し、カーネルを再コンパイルする必要があります。このパッチにより、マルチスレッド プログラムが正しいスレッドをエクスポートできるようになります。

7. 他の人が自分のサーバーのバージョンをクエリできないようにするにはどうすればよいですか?
回答:named.conf の「options」セクションに「version」オプションを配置し、その値を実際に使用するバージョンとは異なるバージョンに設定します。注: これを実行しても攻撃を防ぐことはできませんが、他の人がサーバーの問題を診断しようとする試みを妨げる可能性があり、また、他の人があなたのサーバーを特定する兆候となる可能性もあります。

8. リモート ユーザーのみがサーバーのバージョンをクエリできるように制限するにはどうすればよいですか?
回答: バージョン情報を含む内部ビューが最後に一致すると、次のビュー ステートメントがクエリをインターセプトします。前の質問に対する回答の注意事項がここにも当てはまります。
view "chaos"
match-clients { };
type ヒント
; };
};

9. 「エントロピー ソースが見つかりません」または「エントロピー ソース foo を開けませんでした」とはどういう意味ですか?
A: サーバーは、通常は DNSSEC に関連する特定の操作を実行するためにエントロピーのソースを必要とします。これらの情報ヒントには、情報エントロピーのソースがありません。 /dev/random または同様のデバイスを備えたシステムでは、これらがデフォルトで使用されます。情報ソースは、named.conf のrandom-device オプションを通じて定義することもできます。

10. BIND 9 をインストールし、name で再起動しましたが、BIND 8 のままです。これはなぜですか?
回答: BIND 9 はデフォルトで /usr/local にインストールされます。 BIND 8 は通常、/usr にインストールされます。正しい名前が実行されているかどうかを確認してください。

11. TSIG を使用して動的更新またはゾーン送信を検証してみます。キーの設定は正しいと確信していますが、サーバーが依然として TSIG を拒否します。なぜですか?
回答: これは、時計が不正確であることに問題がある可能性があります。クライアントのクロックとサーバーのクロックが同期されているかどうかを確認します (たとえば、ntp を使用)。

12. BIND 9 をコンパイルしようとしましたが、一部のファイルが見つからなかったため、「make」が失敗しました。なぜ?
A: 並列または分散の「make」を使用して BIND 9 をコンパイルすることはサポートされておらず、機能しません。これらのいずれかを使用する場合は、代わりに通常の make または gmake を使用することをお勧めします。

13. BIND 9 マスター サーバーと BIND 8.2.3 スレーブ サーバーがあり、マスター サーバーは「10.0.0.1#53 への通知に失敗しました: 予期しない入力の終了」のようなエラー メッセージを記録しました。どうしたの?
A: このエラー メッセージは、BIND 8.2.3 の既知のバグが原因で発生します。このバグは BIND 8.2.4 で修正されています。完全に無視しても問題ありません。エラー メッセージに関係なく、通知は正常に動作しています。

14. 次のログ情報が取得され続けるのはなぜですか?
12 月 4 日 23:47:59 クライアント 10.0.0.1#1355: ゾーン example.com/IN の更新: 更新に失敗しました: RRset が存在します (値に依存します) 前提条件が満たされていません (NXRRSET)
回答: DNS 更新プログラムにより、更新リクエストはupdated テストは、特定の条件が満たされていることを確認するために事前に行われます。上記の情報は、条件が満たされていないため、更新を続行できないことを示しています。前提条件の詳細については、doc/rfc/rfc2136.txt を参照してください。

15. 次のログ情報が取得され続けるのはなぜですか?
6 月 21 日 12:00:00.000 クライアント 10.0.0.1#1234: 更新が拒否されました
回答: 誰かが RFC2136 動的更新プロトコルを使用して DNS データを更新しようとしています。 Windows 2000 マシンには、事前の構成を行わずに動的更新要求を DNS サーバーに送信する習慣があります。更新要求が Windows 2000 マシンから送信されている場合は、 を参照して更新要求を無効にする方法を確認してください。

16. 次のログ情報が表示されました。なぜですか?
pid ファイル /var/run/named.pid を開けませんでした: 権限が拒否されました
回答: 非 root ユーザーとして names を実行している可能性が高く、そのユーザーには /var/run への書き込み権限がありません。通常の修正は、指定されたユーザーが所有する /var/run/named ディレクトリを作成し、pid ファイルを「/var/run/named/named.pid」に設定するか、pid ファイルを「named.pid」に設定することです。ファイルは、ディレクトリ オプションで指定されたディレクトリに配置されます (この場合、ディレクトリは指定されたユーザーが書き込み可能である必要があります)。

17. 「dig . ns」を実行すると、ルートサーバーに関する多くの A レコードが失われました。なぜ?
回答: これは正常なことであり、深刻なものではありません。 BIND 9 が RFC 2181 の信頼ランキングを実装する方法と、答えに接着剤が入るのを防ぐ BIND 9 の取り組みには、いくつかの混乱を招く副作用があります。
BIND 9 が最初に起動してバッファリングを初期化するとき、ルート サーバーの権限のある応答の追加データとしてルート サーバー アドレスを受け取り、これらのレコードは追加データとして応答に含めることができます。次に、ルート サーバーの非権限 (推奨) 応答内の追加データとして、ルート サーバー アドレスのサブセットを受信します。その結果、これらのアドレスは権限のない (関連性のある) データとみなされ、応答に含めるには適していません。
サーバーは常にルート サーバー アドレスの完全なセットをバッファとして保持しますが、最後に応答または関連データを受信したかどうかに応じて、追加データとしてすべてのアドレスが含まれない場合があります。通常、これらのアドレスは、「dig a.root-servers.net A」などの明示的なクエリを使用して見つけることができます。

18. BIND 9 マスター サーバーから Windows 2000 スレーブ サーバーへのゾーン転送が失敗しました。なぜ?
A: これは、Windows 2000 DNS サーバーのバグが原因である可能性があります。Windows マシンでは、16K を超える DNS メッセージを正しく処理できません。これは「transfer-format one-answer;」オプションを設定することで解決できます。また、ゾーンにスペースやその他の特殊文字 ("John2Doe3s2Computer" など) が埋め込まれているかどうかを確認することもできます。これらの名前は、Windows 2000 スレーブ サーバーがゾーンを誤って拒否する原因となることが知られています。

19. 「rndc reload」または SIGHUP を実行してもゾーン ファイルがリロードされないのはなぜですか?
回答: ゾーン ファイルを編集してサーバーを再起動することによってゾーン ファイルを更新することも、動的更新によって行うこともできますが、両方の方法を同時に使用することはできません。動的更新を有効にするためにゾーンの「allow-update」オプションを使用した場合、ゾーン ファイルを手動で編集することはできなくなり、サーバーはゾーン ファイルをリロードしようとしなくなります。

20. ドメイン ネーム サーバー上でドメイン ネーム サーバーにクエリを実行できますが、他のマシンからは検索できません。なぜ?
A: これは通常、クエリや応答をブロックするファイアウォール設定の結果です。

21. サーバーを内部ビューと外部ビューの両方に対してスレーブサーバーとして機能させるにはどうすればよいですか?これを実行しようとすると、スレーブ サーバー上の 2 つのビューがマスター サーバー上の同じビューを転送します。
回答: マスターサーバーとスレーブサーバーに複数の IP アドレスを設定する必要があります。例:
メインサーバー: 10.0.1.1 (内部)、10.0.1.2 (外部、IP エイリアス)
match-clients { !10.0.1.4;
notify-source 10.0 .1.1;
transfer-source 10.0.1.1;
external:
match-clients { any }; //
notify-source 10.0. 1.2;
転送元 10.0.1.2;
クエリ元アドレス 10.0.1.2;
スレーブサーバー: 10.0.1.3 (外部、IP エイリアス)
inte


http://www.bkjia.com/PHPjc/508511.html

www.bkjia.com

http://www.bkjia.com/PHPjc/508511.html技術記事この記事は、BIND メイン Web サイト http://www.isc.org/products/BIND/FAQ.html の記事を翻訳したものです。これらの問題は非常に典型的なものであり、BIND 9 ユーザーの日常のメンテナンスと管理によって提供できるものがあると言うべきです...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。