ENUM 統合マニュアル
この記事では、HLR ルックアップに Infobip ENUM インターフェイスを使用する方法について詳しく説明します。
接続
Infobip ENUM インターフェイスとクライアント システム間の接続を有効にするには、クライアントは Infobip ENUM システムでセーフリストに登録される IP アドレスのリストを提供する必要があります。
ENUM クエリ パケット
各 ENUM クエリが満たす必要がある要件があります。ENUM クエリの QTYPE は NAPTR である必要があり、クエリが ENUM サーバーによって拒否されないようにコンパイルする必要がある ENUM クエリ パラメーターには追加の制限があります。
ENUM クエリ パケット形式

ENUMクエリパケットのHEADERセクション

- QR ビットは、DNS クエリを表す 0 に設定する必要があります。
- オペコードは、標準の DNS クエリを表す 0 である必要があります。
- DNS パケットごとに 1 つの ENUM クエリしか作成できません。したがって、QDCOUNT 値は 1 でなければなりません。
- ANCOUNT、NSCOUNT、および ARCOUNT は 0 でなければなりません。
ENUMクエリパケットのQUESTIONセクション

- QNAME は、RFC 3761 で指定されているとおりでなければなりません。これは E.164 番号で、最初に既知のルールが適用され、必須の Infobip ENUM ルートが追加されます (たとえば、最初に既知のルールを適用し、Infobip ENUM ルート 8.4.1.0.6.4.9.7.0.2.4.4.infobip.net を追加した後、+442079460148)。
- QTYPE は、RFC 2168 で指定されている NAPTR である必要があります。
- QCLASS は RFC 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 応答の HEADER セクション
- QR ビットは 1 に設定され、DNS 応答を表します。
- RCODE値は、仕様に従って任意の値にすることができます。
ENUM 応答パケットの QUESTION セクション
これは、応答の対象となる ENUM クエリの Question と同じです。Answer セクションは、ENUM クエリ要求の処理中にエラーが発生しなかった場合に存在します。
ENUMクエリの処理エラーの場合のENUM応答
ENUM クエリが正常に処理され、HLR クエリが成功した(タイムアウトに達しなかった)場合、ENUM サーバは Answer セクションを含む応答を送信します。[回答] セクションには、RDATA タイプが NAPTR である RR の HLR クエリ結果が含まれています。
ENUM エラー応答パケット形式

ENUMエラー応答のHEADERセクション
- QR ビットは 1 に設定され、DNS 応答を表します。
- エラーを表すRCODE値、ENUMエラー応答のゼロ値は返されません。
特定のエラーが発生した場合のRCODE値を以下の表に示します。
RCODE値 | エラーの原因 |
---|---|
破棄されたパケット | HEADER セクションの解析エラー。 |
フォーマー | その他の ENUM クエリ セクション解析エラー。 |
サーブフェイル | 無効なクエリ |
サーブフェイル | HLR クエリの送信に失敗しました |
サーブフェイル | HLR クエリ応答の待機中にタイムアウトしました。 |
NXDOMAIN(エックスドメイン) | ENUM クエリの E.164 番号が無効です E.164 の有効性。番号は、プレフィックス(番号の国コードと識別コード)に基づいてチェックされます。毎日更新されるすべての有効な番号プレフィックスのリストが維持されます。ENUMを介して送信された番号プレフィックスがそのリストにない場合、HLRクエリはSS7ネットワークに送信されず、ENUMサーバはNXDOMAINエラーで応答します。 |
NOTIMPL (英語) | システム障害。 |
拒否 | 不明なエラー |
正常に処理された ENUM クエリの場合の ENUM 応答
ENUM クエリが正常に処理され、HLR クエリが成功した(タイムアウトに達しなかった)場合、ENUM サーバは Answer セクションを含む応答を送信します。Answer セクションには、RDATA タイプが NAPTR である RR の HLR クエリ結果が含まれています。
ENUM 成功応答パケット形式

PRフォーマット

- NAME は RR 名を表し、ENUM クエリ QNAME と同じです。
- TYPE は、ENUM クエリ QTYPE (NAPTR) と同じです。
- CLASS の既定の戻りクラスはインターネット クラス (IN) です。
- TTL のデフォルト値は 86400 秒 (24 時間) です。
- 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=xxxxxx | HLR 応答で返される HLR GT。 |
imsi=xxxxxx | IMSI(International Mobile Subscriber Identity)、HLR応答で返されます。 |
MSC=xxxxx | HLR応答で返される MSC GT を提供します (取得したルーティング情報を使用して詐欺/なりすましSMS可能性があるため、MSC の下 4 桁は返されません)。 |
ステータス=xxxxxx | HLR クエリのステータス (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