[3] [CODE(URI)@en[[[telnet:]]]] [[URL]] は [[Telnet]] [[プロトコル]]による[[対話サービス]]を表します
[SRC[>>1]]。

* 仕様書

- [1] [CITE@en[RFC 4248 - The telnet URI Scheme]] ([TIME[2011-06-05 00:17:42 +09:00]] 版) <http://tools.ietf.org/html/rfc4248>

* 意味

[6] 他の多くの [[URL]] とは異なり、[[プロトコル]]を使ってアクセスできる[[資源]]ではなく、
[[Telnet]] による[[対話]]セッション自体を表しています。

[7] [[Telnet]] [[プロトコル]]にはいろいろな拡張が定義されていて、実装によってはそのような拡張を有効にします。
[SRC[>>1]] 拡張の有無によって [[scheme]] を変えたり、拡張を [[URL]]
の一部として記述したりすることはできません。

* 構文

[4] [[RFC 4248]] では構文が次のように規定されています [SRC[>>1]]。

[PRE(code)[
   telnet://<user>:<password>@<host>:<port>/
]PRE]

;; [5] 以前の [[RFC]] には [[ABNF]] 構文もありましたが、 [[RFC 4248]] にはなぜかありません。

[16] [[path]] は省略可能です [SRC[>>1]]。

* userinfo

[18] [[userinfo]] で指定される[[利用者名]]と[[合言葉]]は実際にはヒント的なもので、
接続時に[[利用者]]に確認が入るのが普通です。 [SRC[>>1]]

* port

[22] [[既定のポート番号]]は [[23]] です [SRC[>>1]]。

* 例

[25] [CITE@ja[XユーザーのDaiyuu Nobori (登 大遊)さん: 「最近の法務局登記官のインターネット・リテラシは、極めて高くなってきたようだ。インターネットにおける Telnet の歴史的重要性を、理解されている。大変に素晴らしいことなのである。 https://t.co/WUN4nC48oZ」 / X]], [TIME[午後5:52 · 2023年9月4日][2023-09-04T08:52:16.000Z]], [TIME[2023-09-05T03:17:01.000Z]] <https://twitter.com/dnobori/status/1698619977950212362>

[26] >>25 登記簿に書かれた [CODE[telnet:]] [[URL]] の事例.

* 関連

[8] 類似した [[URL scheme]] として [CODE(URI)@en[[[tn3270:]]]] や [CODE(URI)@en[[[rlogin:]]]]
があります。

* 歴史

** RFC 1630

- [9] [CITE@en[RFC 1630 - Universal Resource Identifiers in WWW: A Unifying Syntax for the Expression of Names and Addresses of Objects on the Network as used in the World-Wide Web]] 
-- [10] <http://tools.ietf.org/html/rfc1630#page-17>
-- [11] <http://tools.ietf.org/html/rfc1630#page-25>

[12] [[RFC 1630]] の構文の定義では [[path]] は認められていませんでした。

** RFC 1738

- [13] [CITE@en[RFC 1738 - Uniform Resource Locators (URL)]]
-- [14] <http://tools.ietf.org/html/rfc1738#section-3.8>
-- [15] <http://tools.ietf.org/html/rfc1738#page-19>

[17] [[path]] は省略可能となっています。

** RFC 4248 (2004-2005)

[20] [[RFC 4248]] (>>1) は [[RFC 1738]] を[[廃止]]し、 [[RFC 3986]]
世代の [CODE(URI)@en[[[telnet:]]]] [[URL]] の仕様書として (ようやく) 出版されました。
ただし内容はほとんど [[RFC 1738]] と変わっていません。 [[ABNF]]
定義はなぜか削除されています。

* 実装

[19] [CITE[URL Schemes Supported in Lynx]] ([TIME[2004-02-03 05:02:28 +09:00]] 版) <http://lynx.isc.org/lynx2.8.5/lynx2-8-5/lynx_help/lynx_url_support.html#telnet_url>

[21] [[Netscape Navigator]] も昔から対応していて、 [[OS]] 附属の [[telnet]]
クライアントを起動していました。

* メモ

[2]
[CITE@ja[telnet は古い友達 | | プログラマ2.0日報 | あすなろBLOG]] ([TIME[2008-12-13 15:57:01 +09:00]] 版) <http://blog.pasonatech.co.jp/sugiura/9234.html>

>そういえば、ASCII アニメ(エスケープシーケンスで動かす奴)を見せる用途で、
>    <a href="telnet:user@host.domain">ASCIIアニメ見る?</a>
>
と telnet プロトコルのアンカーを HTML に埋め込んでたURLがありましたが、今でも
>
- スターウォーズ(telnet://towel.blinkenlights.nl/ HP) そういえばコレ昔からあったもの。懐かしい...
- サッカーワールドカップ 2006(telnet://ascii-wm.net:2006/ HP) こっちはイマドキなもので、精度が凄いです。リアルでびっくり。
>
とかあるようです。そういう使い方もないわけじゃないですね(苦笑)。何かヘンなサービスをさせるのに、意外な使い方があるかもしれないですよ...


[FIG(quote)[
[FIGCAPTION[
[24] [CITE@en[VLC command-line help - VideoLAN Wiki]]
([TIME[2020-03-15T21:16:58.000Z]], [TIME[2020-10-01T07:57:03.896Z]])
<https://wiki.videolan.org/VLC_command-line_help>
]FIGCAPTION]

> 
>       --cli-host=<string>        CLI input
>           Accept commands from this source. The CLI defaults to stdin
>           ("*console"), but can also bind to a plain TCP socket
>           ("localhost:4212") or use the telnet protocol
>           ("telnet://0.0.0.0:4212")

]FIG]
