Skip to content

tcpserverとは

tcpserverはD. J. Bernstein氏作のサーバ制御ツールでucspi-tcp日本語訳)というパッケージに入っています。UCSPIとはDJB氏が提案している UNIX Client-Server Program Interface日本語訳)というTCP/IPのクライアント・サーバ通信ツールのインターフェースの仕様です。また、接続制御のために同氏作のデータベースcdb日本語訳)を用います。

tcpserverには以下のような特徴があります。

  • ローカルホスト・リモートホストのホスト名、IPアドレス、ポート番号、ユーザ名を環境変数で参照できる。
  • 同時接続数を制限できる。
  • そのホストが複数のIPアドレスを持つ場合、特定のIPアドレス/ホストへの接続に対して制御できる。
  • ユーザ名、IPアドレス、ドメイン名を元にアクセス制御ができる。
  • アクセス制御ルールにはハッシュ化されたデータベースcdbを用いているため、大規模・複雑になっても高速に処理できる。
  • アクセス制御データベースの変更はすぐに反映される。(SIGHUPを送るといった操作はいらない)
  • ソース・ルーティング(IP options)を落とすことができる。
  • TCP_NODELAYを有効にできる。