日本語 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.4-RELEASE-K, 13.0-RELEASE-K から 13.3-RELEASE-K, 14.0-RELEASE-K から 14.1-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
PIM(4) FreeBSD カーネルインタフェースマニュアル PIM(4) 名称 pim -- プロトコル独立マルチキャスト 書式 options MROUTING #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <netinet/ip_mroute.h> #include <netinet/pim.h> int getsockopt(int s, IPPROTO_IP, MRT_PIM, void *optval, socklen_t *optlen); int setsockopt(int s, IPPROTO_IP, MRT_PIM, const void *optval, socklen_t optlen); int getsockopt(int s, IPPROTO_IPV6, MRT6_PIM, void *optval, socklen_t *optlen); int setsockopt(int s, IPPROTO_IPV6, MRT6_PIM, const void *optval, socklen_t optlen); 解説 PIM は 2 つのマルチキャストルーティングプロトコルのための共通の名前です: プロトコル独立マルチキャスト - スパース (まばらな) モード (PIM-SM) とプロ トコル独立マルチキャスト - デンス (密な) モード (PIM-DM) です。 PIM-SM は基本的なユニキャストルーティング情報ベースか別々のマルチキャスト ケイパブルルーティング情報ベースを使用することができるマルチキャストルー ティングプロトコルです。それは、グループ単位で集合地点 (Rendezvous Point (RP)) をルートとする単方向の共有されたツリーを構築し、ソース単位で最短パ スのツリーをオプションで作成します。 oIM-DM はすべてのマルチキャストルータへマルチキャストデータグラムをあふれ させる基本的なユニキャストルーティング情報ベースを使用するマルチキャスト ルーティングプロトコルです。プルーンメッセージは、グループメンバシップ情 報なしでルータに伝播されることから将来のデータグラムを防ぐのに使用されま す。 PIM-SM と PIM-DM の両方はかなり複雑なプロトコルですが、PIM-SM はさらに複 雑です。ルータで PIM-SM か PIM-DM マルチキャストルーティングを有効にする ために、ユーザは、カーネル (カーネル設定オプションに関しては、書式を参照 してください) でマルチキャストルーティングと PIM 処理を有効にし、PIM-SM か PIM-DM 機能のユーザレベル処理を実行しなければなりません。開発者の観点 から、プログラミングガイドセクションで説明されたプログラミングガイドは、 カーネルで PIM 処理を制御するのに使用されるべきです。 プログラミングガイド マルチキャストルーティングソケットがオープンされ、マルチキャストフォワー ディングがカーネルを参照) で有効にされた後に、次のソケットオプションの 1 つはカーネルで PIM 処理を有効にするか無効にするために使用されるべきです。 それらのオプションは確実な特権 (すなわち、root の特権) を必要とすることに 注意してください。 /* IPv4 */ int v = 1; /* 1 to enable, or 0 to disable */ setsockopt(mrouter_s4, IPPROTO_IP, MRT_PIM, (void *)&v, sizeof(v)); /* IPv6 */ int v = 1; /* 1 to enable, or 0 to disable */ setsockopt(mrouter_s6, IPPROTO_IPV6, MRT6_PIM, (void *)&v, sizeof(v)); PIM 処理が有効にされた後に、マルチキャストケイパブルインタフェースは追加 されるべきです。を参照)。PIM-SM の場合には、PIM-レジスタ仮想インタフェー スは同様に追加しなければなりません。次のオプションを使用することによっ て、これを達成することができます。 /* IPv4 */ struct vifctl vc; memset(&vc, 0, sizeof(vc)); /* Assign all vifctl fields as appropriate */ ... if (is_pim_register_vif) vc.vifc_flags |= VIFF_REGISTER; setsockopt(mrouter_s4, IPPROTO_IP, MRT_ADD_VIF, (void *)&vc, sizeof(vc)); /* IPv6 */ struct mif6ctl mc; memset(&mc, 0, sizeof(mc)); /* Assign all mif6ctl fields as appropriate */ ... if (is_pim_register_vif) mc.mif6c_flags |= MIFF_REGISTER; setsockopt(mrouter_s6, IPPROTO_IPV6, MRT6_ADD_MIF, (void *)&mc, sizeof(mc)); PIM パケットの送信か受信は最初に、IPPROTO_PIM のプロトコル値で ``生のソ ケット'' (socket(2) を参照) をオープンすることによって、達成することがで きます。 /* IPv4 */ int pim_s4; pim_s4 = socket(AF_INET, SOCK_RAW, IPPROTO_PIM); /* IPv6 */ int pim_s6; pim_s6 = socket(AF_INET6, SOCK_RAW, IPPROTO_PIM); 次に、つぎのシステムコールは PIM パケットを送信するか受信するために使用で きます: sendto(2), sendmsg(2), recvfrom(2), recvmsg(2)。 関連項目 getsockopt(2), recvfrom(2), recvmsg(2), sendmsg(2), sendto(2), setsockopt(2), socket(2), inet(4), intro(4), ip(4), multicast(4) 規格 PIM-SM プロトコルは (draft-ietf-pim-sm-v2-new-* によって置き換えられる) RFC2362 に仕様化されています。PIM-DM プロトコルは (draft-ietf-pim-dm-new- v2-*) に仕様化されています。 作者 IRIX と SunOS-4.x のオリジナルの IPv4 PIM カーネルサポートは、Ahmed Helmy (USC and SGI) によって実装されました。その後コードは様々な BSD 風味に移植 され、George Edmond Eddy (Rusty) (ISI)、Hitoshi Asaeda (WIDE Project) と Pavlin Radoslavov (USC/ISI and ICSI) によって変更されました。IPv6 PIM カーネルサポートは、IPv4 PIM カーネルサポートに基づいて、KAME プロジェク ト (http://www.kame.net) によって実装されました。 このマニュアルページは、Pavlin Radoslavov (ICSI) によって書かれました。 FreeBSD 11.4 February 12, 2007 FreeBSD 11.4