Logo
Logo
CTRLK

ENUM 統合マニュアル

この記事では、HLR ルックアップに NTT CPaaS ENUM インターフェイスを使用する方法について詳しく説明します。

接続

NTT CPaaS ENUM インターフェイスとクライアント システム間の接続を有効にするには、クライアントは NTT CPaaS ENUM システムでセーフリストに登録される IP アドレスのリストを提供する必要があります。

ENUM クエリ パケット

各 ENUM クエリが満たす必要がある要件があります。ENUM クエリの QTYPENAPTR である必要があり、クエリが ENUM サーバーによって拒否されないようにコンパイルする必要がある ENUM クエリ パラメーターには追加の制限があります。

ENUM クエリ パケット形式 [#enum-query-packet-format-enum-query-packet]

ENUM Integration Manual - ENUM query packet

ENUMクエリパケットのHEADERセクション [#header-section-of-enum-query-packet-enum-query-packet]

The HEADER section of ENUM query packet
  1. QR ビットは、DNS クエリを表す 0 に設定する必要があります。
  2. オペコードは、標準の DNS クエリを表す 0 である必要があります。
  3. DNS パケットごとに 1 つの ENUM クエリしか作成できません。したがって、QDCOUNT 値は 1 でなければなりません。
  4. ANCOUNTNSCOUNT、および ARCOUNT0 でなければなりません。

ENUMクエリパケットのQUESTIONセクション [#question-section-of-enum-query-packet-enum-query-packet]

QUESTION section of ENUM query packet
  1. QNAME は、RFC 3761 で指定されているとおりでなければなりません。これは E.164 番号で、最初に既知のルールが適用され、必須の NTT CPaaS ENUM ルートが追加されます (たとえば、最初に既知のルールを適用し、NTT CPaaS ENUM ルート 8.4.1.0.6.4.9.7.0.2.4.4.infobip.net を追加した後、+442079460148)。
  2. QTYPE は、RFC 2168 で指定されている NAPTR である必要があります。
  3. QCLASSRFC 1035 で定義されている任意のもので、このサービスの標準はインターネット クラス (IN) である必要があります。

dig を使用した有効な ENUM クエリの例は次のとおりです。

dig naptr 5.4.3.7.1.0.5.1.9.5.8.3.infobip.net @x.x.x.x

(X.X.X.X は ENUM サーバの IP アドレスを表します)

ENUM サーバーの応答

ENUM サーバ応答形式は RFC 1035 および RFC 3761 に準拠しており、返される RR には NAPTR RDATA のみが含まれ、ENUM クエリの処理中にエラーが発生した場合は ENUM エラー応答も返されます。

ENUM 応答パケット形式 [#enum-response-packet-format-enum-server-responses]

ENUM response packet format

ENUM 応答の HEADER セクション [#header-section-of-enum-response-enum-server-responses]

  1. QR ビットは 1 に設定され、DNS 応答を表します。
  2. RCODE値は、仕様に従って任意の値にすることができます。

ENUM 応答パケットの QUESTION セクション [#question-section-of-enum-response-packet-enum-server-responses]

これは、応答の対象となる ENUM クエリの Question と同じです。Answer セクションは、ENUM クエリ要求の処理中にエラーが発生しなかった場合に存在します。

ENUMクエリの処理エラーの場合のENUM応答 [#enum-responses-in-case-of-error-processing-enum-query-enum-server-responses]

ENUM クエリが正常に処理され、HLR クエリが成功した(タイムアウトに達しなかった)場合、ENUM サーバは Answer セクションを含む応答を送信します。[回答] セクションには、RDATA タイプが NAPTR である RR の HLR クエリ結果が含まれています。

ENUM エラー応答パケット形式 [#enum-error-response-packet-format-enum-server-responses]

ENUM error response packet format

ENUMエラー応答のHEADERセクション [#header-section-of-enum-error-response-enum-server-responses]

  1. QR ビットは 1 に設定され、DNS 応答を表します。
  2. エラーを表すRCODE値、ENUMエラー応答のゼロ値は返されません。

特定のエラーが発生した場合のRCODE値を以下の表に示します。

RCODE値

エラーの原因

破棄されたパケットHEADER セクションの解析エラー。
フォーマーその他の ENUM クエリ セクション解析エラー。
サーブフェイル無効なクエリ
サーブフェイルHLR クエリの送信に失敗しました
サーブフェイルHLR クエリ応答の待機中にタイムアウトしました。
NXDOMAIN(エックスドメイン)ENUM クエリの E.164 番号が無効です E.164 の有効性。番号は、プレフィックス(番号の国コードと識別コード)に基づいてチェックされます。毎日更新されるすべての有効な番号プレフィックスのリストが維持されます。ENUMを介して送信された番号プレフィックスがそのリストにない場合、HLRクエリはSS7ネットワークに送信されず、ENUMサーバはNXDOMAINエラーで応答します。
NOTIMPL (英語)システム障害。
拒否不明なエラー

正常に処理された ENUM クエリの場合の ENUM 応答 [#enum-responses-in-case-of-successfully-processed-enum-query-enum-server-responses]

ENUM クエリが正常に処理され、HLR クエリが成功した(タイムアウトに達しなかった)場合、ENUM サーバは Answer セクションを含む応答を送信します。Answer セクションには、RDATA タイプが NAPTR である RR の HLR クエリ結果が含まれています。

ENUM 成功応答パケット形式 [#enum-successful-response-packet-format-enum-server-responses]

ENUM successful response packet format

PRフォーマット [#pr-format-enum-server-responses]

ENUM RR format
  1. NAMERR 名を表し、ENUM クエリ QNAME と同じです。
  2. TYPE は、ENUM クエリ QTYPE (NAPTR) と同じです。
  3. CLASS の既定の戻りクラスはインターネット クラス (IN) です。
  4. TTL のデフォルト値は 86400 秒 (24 時間) です。
  5. RDLENGTH は、NAPTR の長さをバイト単位で表します。

RDATAの

ENUM サーバーによって返される NAPTR RDATA 値は次のとおりです。

命令10
優先100
フラグ「u」
サービス"E2U+pstn:tel" (E2U+pstn:tel)
正規表現"!^.*!tel:\1;hlr=xxxxxx;imsi=xxxxxx;msc=xxxxxx;msisdn=xxxxxx;ステータス=xxxx"
交換.
hlr=xxxxxxHLR 応答で返される HLR GT。
imsi=xxxxxxIMSI(International Mobile Subscriber Identity)、HLR応答で返されます。
MSC=xxxxxHLR応答で返される MSC GT を提供します (取得したルーティング情報を使用して詐欺/なりすましSMS可能性があるため、MSC の下 4 桁は返されません)。
ステータス=xxxxxxHLR クエリのステータス (HLR エラー コード)。
正規表現"!^.*!tel:\1;hlr=xxxxxx;imsi=xxxxxx;msc=xxxxxx;msisdn=xxxxxx;ステータス=xxxx"

HLR クエリが成功した場合の dig を使用した ENUM クエリ応答の例:

;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 195 ;; flags: qr rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;5.4.3.7.1.0.5.1.9.5.8.3.infobip.net. IN NAPTR ;; ANSWER SECTION: 5.4.3.7.1.0.5.1.9.5.8.3.infobip.net. 86400 IN NAPTR 10 100 "u" "E2U+pstn:tel" "!^ .*!tel:\\1\;hlr=385915017345\;imsi=219101100165275\;msc=3859\;msisdn=38591501734 5\;status=00 00" . ;; Query time: 546 msec

HLRクエリエラーの場合のdigを使用したENUMクエリ応答の例:

;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1696 ;; flags: qr rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;7.0.0.0.0.6.8.9.5.8.3.infobip.net. IN NAPTR ;; ANSWER SECTION: 7.0.0.0.0.6.8.9.5.8.3.infobip.net. 86400 IN NAPTR 10 100 "u" "E2U+pstn:tel" "!^.* !tel:\\1\;msisdn=38598600007\;status=0006 ;; Query time: 383 msec