FreeBSD 日本語マニュアル検索 (jman/japropos/jwhatis)


日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。

4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.3-RELEASE-K, 13.0-RELEASE-K から 13.2-RELEASE-K は、全翻訳済み)

13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。



検索コマンド: man apropos whatis
コマンド/キーワード:
日本語マニュアル RELEASE :
セクション:
Table of Contents
名称 | 書式 | 解説 | 関連項目 | 作者
TUN(4)             FreeBSD カーネルインタフェースマニュアル             TUN(4)

名称
     tun -- トンネルソフトウェアネットワークインタフェース

書式
     device tun

解説
     tun インタフェースは、pty(4) のネットワークインタフェースの類似物として大
     まかに記述することができるソフトウェアのループバックメカニズムです、すな
     わち、tun は、pty(4) ドライバが端末のために行うことをネットワークインタ
     フェースのために行います。

     tun ドライバは、pty(4) ドライバのように、次の 2 つのインタフェースを提供
     しています: それがシミュレートしている普通の機能のようなインタフェース
     (tun の場合のネットワークインタフェース、または pty(4) のための端末)、と
     キャラクタ特殊デバイス ``制御'' インタフェース。クライアントプログラム
     は、tun ``制御'' インタフェースに、またはインタフェースから (デフォルト
     で) IP パケットを転送します。tap(4) インタフェースは、イーサネットレイヤ
     (層) で同様な機能を提供します: クライアントは、tap(4) ``制御'' インタ
     フェースに、またはインタフェースから (デフォルトで) IP パケットを転送しま
     す。

     ネットワークインタフェースは、``tun0'', ``tun1'', などと名前が付けられ、
     オープンされた制御デバイスごとに 1 つです。これらのネットワークインタ
     フェースは、if_tun.ko モジュールがアンロードされるまで、または
     ifconfig(8) コマンドで削除されるまで、存続します。

     tun デバイスは、インタフェースクローニングを使用して作成されます。これ
     は、``ifconfig tunN create'' コマンドを使用して行われます。これは、tun デ
     バイスを作成する推奨方法です。同じ方法によって、インタフェースの削除を許
     可しています。これについては、``ifconfig tunN destroy'' コマンドを使用し
     ます。

     sysctl(8) 変数 net.link.tun.devfs_cloning が 0 でないなら、tun インタ
     フェースは、特殊制御デバイス /dev/tun でオープンを許可します。このデバイ
     スがオープンされるとき、tun は、最小で未使用の (どれかを決定する
     devname(3) を使用する) tun デバイスのためのハンドルを返します。

     古い devfs クローニング機能を無効にすることは、ppp(8) と ssh(1) ような
     tun を使用する既存のアプリケーションをブレーク (break) するかもしれませ
     ん。したがって、それは、追って通知があるまで有効にされることをデフォルト
     とします。

     制御デバイスは、if_tun.ko が、ネットワークインタフェースが存続するのと同
     じ方法でアンロードされるまで、(いったんオープンに成功すると) 存続します
     (上記参照)。

     各インタフェースは、SIOCAIFADDR のように、普通のネットワークインタフェー
     ス ioctl(2) をサポートします、従って、他のインタフェースのように
     ifconfig(8) で使用することができます。ブート時に、それらは、POINTOPOINT
     インタフェースですが、これを、変更することができます。下記の制御デバイス
     の説明を参照していください。システムがネットワークインタフェースのパケッ
     トを送信することを選択するとき、(それが、``入力'' としてそこに現われる)
     制御デバイスからパケットを読み込むことができます。制御デバイスにパケット
     を書き込むことは、あたかも (存在しない) ハードウェアがちょうどパケットを
     受信したかのように、ネットワークインタフェースで入力パケットを生成しま
     す。

     トンネルデバイス (/dev/tunN) は、排他的にオープンされます (それが既にオー
     プンされているなら、それをオープンすることができません)。read(2) 呼び出し
     は、インタフェースが (制御デバイスがオープンされ、インタフェースのアドレ
     スが設定されていたことを意味する) ``レディ'' でない (準備ができていない)
     なら、エラー (EHOSTDOWN) を返します。

     いったんインタフェースがレディ (準備ができている) になると、read(2) は、
     利用可能となるなら、パケットを返します。そうでなければ、そうであるまで、
     ブロックするか、または非ブロッキング I/O が有効になったかどうかに依存し
     て、EWOULDBLOCK を返すかのいずれかです。パケットが read(2) に渡されたバッ
     ファで許可されるものより長いなら、余分なデータは、黙って落とされます。

     TUNSLMODE ioctl が設定されているなら、制御デバイスから読み込まれたパケッ
     トは、ネットワークインタフェースの出力ルーチン tunoutput() に提示されるよ
     うな宛先アドレスとともに先頭に追加されます。宛先アドレスは、struct
     sockaddr 形式にあります。先頭に追加されたアドレスの実際の長さは、メンバ
     sa_len にあります。TUNSIFHEAD ioctl が設定されているなら、パケットは、
     ネットワークバイト順で 4 バイトのアドレスファミリとともに先頭に追加されま
     す。TUNSLMODE と TUNSIFHEAD は、相互に排他的です。どんな場合でも、パケッ
     トデータは、直ちに続きます。

     write(2) 呼び出しは、疑似インタフェースで ``受信'' されるパケットを渡しま
     す。TUNSIFHEAD ioctl が設定されているなら、アドレスファミリは、先頭に追加
     されなければなりません、そうでなければ、パケットは、タイプ AF_INET である
     と仮定されます。各 write(2) 呼び出しは、ちょうど 1 つのパケットを供給しま
     す。パケットの長さは、(あらゆる供給されたアドレスファミリを引いて)
     write(2) に提供されるデータの量から取られます。書き込みは、ブロックされま
     せん。パケットが一時的な理由 (例えば、利用可能なバッファ空間がない) のた
     めの受け付けることができないなら、それは、黙って落とされます。理由が一時
     的でない (例えば、パケットが大きすぎる) なら、エラーが返されます。

     (<net/if_tun.h> で定義された) 次の ioctl(2) 呼び出しがサポートされます:

     TUNSDEBUG   引数は、int へのポインタであるべきです。これは、内部のデバッ
                 グ変数を、その値に設定します。どちらかといえば、この変数が制
                 御するものは、ここで文書化されていません。ソースコードを参照
                 してください。

     TUNGDEBUG   引数は、int へのポインタであるべきです。これは、内部のデバッ
                 グ変数の値を、それに設定します。

     TUNSIFINFO  引数は、struct tuninfo へのポインタであるべきで、MTU とトンネ
                 ルデバイスのボーレート(通信速度) を設定することを可能にしま
                 す。タイプは、TUNGIFINFO によって返されるものと同じであるか、
                 または IFT_PPP に設定されなければなりません、そうでなければ、
                 ioctl(2) 呼び出しは、失敗します。struct tuninfo は、
                 <net/if_tun.h> で宣言されています。

                 この ioctl の使用は、スーパユーザに制限されます。

     TUNGIFINFO  引数は、struct tuninfo へのポインタであるべきで、ここで、現在
                 の MTU、タイプとボーレート (通信速度) が格納されます。

     TUNSIFMODE  引数は、int へのポインタであるべきです。その値は、
                 IFF_POINTOPOINT または IFF_BROADCAST のいずれかでなければなら
                 ず、マルチキャストのサポートが要求されるなら、値に
                 IFF_MULTICAST を論理和 (OR) するべきです。対応する ``tunN''
                 インタフェースのタイプは、供給されたタイプに設定されます。値
                 が上記の範囲の外にあるなら、EINVAL エラーが返されます。インタ
                 フェースは、その時点でダウンしていなければなりません。それが
                 動作しているなら、EBUSY エラーが返されます。

     TUNSLMODE   引数は、int へのポインタであるべきです。0 でない値は、
                 ``multi-af'' モードをオフにし、``link-layer (リンクレイヤ)''
                 モードをオンにして、トンネルデバイスから読み込まれたパケット
                 は、ネットワークの宛先アドレス (上記参照) とともに先頭に追加
                 されます 。

     TUNSIFPID   トンネルデバイスを所有する pid を現在のプロセスの pid に設定
                 します。

     TUNSIFHEAD  引数は int へのポインタであるべきです。0 でない値は、``link
                 layer (リンクレイヤ)'' モードをオフにし、``multi-af'' モード
                 を有効にします、ここで、すべてのパケットは、4 バイトのアドレ
                 スファミリとともに先頭に追加されます。

     TUNGIFHEAD  引数は int へのポインタであるべきです。ioctl は、デバイスが
                 ``multi-af'' モードであるなら、値を 1 に設定し、そうでなけれ
                 ば、0 に設定します。

     FIONBIO     引数 int の値が 0 か、0 でないかによって、読み込みのための非
                 ブロッキング I/O をオフまたはオンに切り替えます。(書き込み
                 は、常に非ブロッキングです。)

     FIOASYNC    引数 int の値が 0 か、0 でないかによって、読み込みのための非
                 同期 I/O (すなわち、データが読み込まれることが利用可能である
                 とき、SIGIO の生成) をオフまたはオンに切り替えます。

     FIONREAD    あらゆるパケットが読み込まれるためにキューに入れられるなら、
                 最初のパケットのサイズを引数 int に格納します。そうでなけれ
                 ば、0 を格納します。

     TIOCSPGRP   非同期 I/O が有効にされるとき、SIGIO シグナルを受け付けるため
                 にプロセスグループを引数 int の値に設定します。

     TIOCGPGRP   SIGIO シグナルのためのプロセスグループを検索して、引数 int の
                 値に取り出します。

     また、制御デバイスは、読み込みのための select(2) をサポートします。書き込
     みのための選択は、無意味で、書き込みは、常に非ブロッキングであるので、常
     に、成功します。

     データデバイスの最後のクローズで、デフォルトによって、(あたかも、ifconfig
     tunN down であるかのように) インタフェースは、ダウンされますすべての
     キューに入れられたパケットは、捨てられます。データデバイスがオープンされ
     ていないとき、インタフェースが動作しているなら、出力パケットは、それらを
     積み重ねるのではなく、常に捨てられます。

関連項目
     ioctl(2), read(2), select(2), write(2), devname(3), inet(4), intro(4),
     pty(4), tap(4), ifconfig(8)

作者
     このマニュアルページは、始めに NetBSD から入手されました。

FreeBSD 11.2                   November 29, 2017                  FreeBSD 11.2

Table of Contents

FreeBSD マニュアル検索