Name/Fingerプロトコルは、RFC 742(1977年12月)に基づいて David Zimmerman が name' および finger プログラムのインタフェースとして書いたもので、ネットワークサイト内の特定コンピュータまたは特定人物のステータスを表示するのに使われる。finger プログラムは1971年 Les Earnest が書いたもので、ネットワーク内の他のユーザーに関する情報を得たいという要望に応えたものであった。誰がログインしているかという情報は、その人にどこに行けば会えるかということを判断する材料となる。これは、ネットワーク上のプレゼンス情報技術の先駆けであった。
finger プログラム以前には、この種の情報を得るには who プログラムを使ってログインユーザーのIDなどの情報を得て、そのリストを指でたどって探す必要があった。Earnest が finger と名づけたのはこのためである[1]。
Finger ユーザー情報プロトコル
Finger はTCPのポート番号 79 (十進)を使う。ローカルホストがリモートホストのFingerポートに対してTCPコネクションを確立する。リモートホストでは、そのコネクションの要求を処理するための RUIP (Remote User Information Program) が起動される。ローカルホストはRUIPにFingerクエリ仕様に基づいた1行のクエリを送信し、RUIPの応答を待つ。RUIPはそのクエリを受信して処理し、返答し、コネクションをクローズさせる。ローカルホストは答を受信すると、ローカル側のコネクションのクローズを行う。
Finger ユーザー情報プロトコルは RFC1288(The Finger User Information Protocol、1991年12月)に基づいている。一般に、サーバ側の実装は fingerd(finger daemon)、クライアント側の実装は name と finger があり、その時点のシステムおよび特定人物に関するステータス情報を人間が読める形式で表示する。特にフォーマットは決まっておらず、コマンド行1行ぶんの内容をプロトコルの応答として返す。UNIX、Unix系システム、最近のWindowsで実装されている。