1

私は、クライアントが独自に DNS を更新できるようにするためのインターフェイスに取り組んでいます。

2 つの質問があります。

  1. 有効なホスト レコードとターゲット レコードを構成するものは何ですか? (A、CNAME、MX、TXT) つまり、ユーザーがホストとターゲットに対して........を入力すると、DNS サーバーはそれを好まないでしょう。
  2. ユーザー入力をサニタイズするために使用できる正規表現はありますか?

ところで、それは BIND9 DNS および C# Web アプリです。

ありがとう、

カイル

4

4 に答える 4

3

ドメイン名ラベルには、技術的には任意のオクテット値を含めることができますが、通常は英数字とハイフンとアンダースコア文字のみが含まれます。

これは、 RFC 1035のセクション 2.3.1 の推奨事項によるものです。

ラベルは、ARPANET ホスト名の規則に従う必要があります。文字で始まり、文字または数字で終わり、内部文字として文字、数字、およびハイフンのみを使用する必要があります。長さにも制限があります。ラベルは 63 文字以下にする必要があります。

アンダースコア文字は最近追加されたもので、通常、SRVレコードのラベル部分で使用されます。

.ユーザーが独自のサブドメインを作成できるようにする場合は、" " 文字を許可することもできます。

可能な値は次のとおりです。

  • Arecord - ドットで区切られた IP アドレスである必要があります
  • CNAMErecord - 他の法的ラベルである必要があります
  • MXrecord - 16 ビット整数の優先順位フィールド、および有効なホスト名。注: 一部の人々は、それ自体がレコードのみを指すラベルを付けていCNAMEます。これは眉をひそめます。
  • TXT記録 - あなたが好きなものは何でも!

いずれの場合も、通常のセットにない文字を許可する場合、それらが BIND 形式のゾーン ファイルに格納されている場合は、エスケープする必要があることに注意してください。

于 2009-02-06T09:22:17.757 に答える