QA@IT
«回答へ戻る

回答を投稿

はじめに、お時間を割いていただきRFCをご確認いただいたのでしょうか。
心から感謝申し上げます。

明確なご回答をいただき、誠にありがとうございます。

RADIUS over TCP(RFC6613)では、以下の記載があります。

2.6.5. Limitations of the ID Field
The RADIUS ID field is one octet in size. As a result, any one TCP
connection can have only 256 "in flight" RADIUS packets at a time.

上記を実装する場合、Lengthフィールドのみで、一つのTCPコネクションの中で、複数のメッセージを適切に扱わなければならいことになります。

RADIUS over TCP(RFC6613)では、また、以下のような記載があります。

2.6.4. Malformed Packets and Unknown Clients
 ・・・・
That is, the TCP connection MUST be closed if any of
the following circumstances are seen:
 ・・・
 * Packet where the attributes do not exactly fill the packet
 ・・・

Lengthフィールドが誤っている場合は、適切に属性データが送られているか判断できないと考えています。
RADIUS over TCP(RFC6613)に限ったことではなく、多くのメッセージフォーマットでLengthフィールドが使われていますが、一般的にLengthフィールドのみでどのようにメッセージを扱われているか、お知恵を拝借させていただきました。

Lengthフィールド値が適切であることが大前提であることは理解していますが、フェールセーフの観点から、明確かつ効率よくMalformed Packetを排除する方法があればと思った次第です。
第三者が故意にMalformed Packetを送ってこないとも限りませんので、当該レイヤーで可能限り対策ができないかと。

非常に勉強になりました。ありがとうございました。

はじめに、お時間を割いていただきRFCをご確認いただいたのでしょうか。
心から感謝申し上げます。

明確なご回答をいただき、誠にありがとうございます。

RADIUS over TCP(RFC6613)では、以下の記載があります。

>2.6.5. Limitations of the ID Field
>The RADIUS ID field is one octet in size. As a result, any one TCP
>connection can have only 256 "in flight" RADIUS packets at a time.

上記を実装する場合、Lengthフィールドのみで、一つのTCPコネクションの中で、複数のメッセージを適切に扱わなければならいことになります。

RADIUS over TCP(RFC6613)では、また、以下のような記載があります。

>2.6.4. Malformed Packets and Unknown Clients
> ・・・・
>That is, the TCP connection MUST be closed if any of
>the following circumstances are seen:
> ・・・
> * Packet where the attributes do not exactly fill the packet
> ・・・

Lengthフィールドが誤っている場合は、適切に属性データが送られているか判断できないと考えています。
RADIUS over TCP(RFC6613)に限ったことではなく、多くのメッセージフォーマットでLengthフィールドが使われていますが、一般的にLengthフィールドのみでどのようにメッセージを扱われているか、お知恵を拝借させていただきました。

Lengthフィールド値が適切であることが大前提であることは理解していますが、フェールセーフの観点から、明確かつ効率よくMalformed Packetを排除する方法があればと思った次第です。
第三者が故意にMalformed Packetを送ってこないとも限りませんので、当該レイヤーで可能限り対策ができないかと。

非常に勉強になりました。ありがとうございました。