JM プロジェクトは、主に Linux 関連のマニュアルページの日本語ページを翻訳・公開しています。
... < sys/socket.h > rtnetlink_socket = socket(AF_NETLINK, int socket_type , NETLINK_ROUTE); int RTA_OK(struct rtattr * rta , int rtabuflen ); void *RTA_ ... int rtabuflen ); unsigned int RTA_LENGTH(unsigned int length ); unsigned int RTA_SPACE(unsigned int length ); 説明 全ての rtnetlink (7) メッセージは netlink (7) メッセージヘッダーと追加属性からなる。 属性の操作は、必ずここに挙げたマクロだけを使って行うべ ... 。 準拠 これらのマクロは非標準で、Linux での拡張である。 バグ このマニュアルは完全ではない。 例 デバイスの MTU をセットする rtnetlink メッセージを生成する #include < linux/rtnetlink.h > ... struct { struct nlmsghdr nh; struct ifinfomsg if; char attrbuf[512 ... ... s/socket.h > rtnetlink_socket = socket(AF_NETLINK, int socket_type , NETLINK_ROUTE); 説明 rtnetlink はカーネルのルーティングテーブルを読んだり変更 ... ル (queueing dicipline)・ トラフィッククラス・パケットのクラス分類などが、すべて NETLINK_ROUTE ソケットを通して制御できる。 rtnetlink は netlink メッセージをベースにしている。詳細は netlink (7) を見ること。 ルーティング属性 rtnetlink メッセージには、初期ヘ ... ; /* Type of option */ /* Data follows */ }; これらの属性の操作は、 RTA_* マクロか libnetlink のみを使って行うべきである。 rtnetlink (3) を見よ。 メッセージ rtnetlink は (標準的な netlink メッセージに加えて) 以下のメッセージタイプから構成される。 RTM_NEWL ... ... up)・ キューイングルール (queueing dicipline)・トラフィッククラス・ パケットのクラス分類の修正に用いることができるだろう ( rtnetlink (7) を見よ)。 NETLINK_W1 (Linux 2.6.13 から 2.16.17 まで) 単線 (1-wire) のサブシステムからのメッセージ。 NETLINK_USERSOCK ... できるメッセージタイプは、 通常もっと多い。これらに関しては適切な man ページを見てほしい。 たとえば NETLINK_ROUTE に関しては rtnetlink (7) に書いてある。 nlmsg_flags の標準フラグビット NLM_F_REQUEST 要求メッセージ全てでセットされなければならない。 NLM_F_MUL ... /* 何らかのエラー処理を行う */ ... /* ペイロードの解析を続ける */ ... } 関連項目 cmsg (3), netlink (3), capabilities (7), rtnetlink (7), sock_diag (7) libnetlink に関する情報 libnl に関する情報 RFC 3549 "Linux Netlink as an IP Services Protocol" この文書 ... ... ラグがセットされていないインターフェースの名前は /proc/net/dev で知ることができる。 ローカル IPV6 IP アドレスは /proc/net か rtnetlink (7) で知ることができる。 バグ glibc 2.1 では < net/if.h > に ifr_newname マクロがない。 とりあえずの対応策として、以下のコ ... ておくこと。 #ifndef ifr_newname #define ifr_newname ifr_ifru.ifru_slave #endif 関連項目 proc (5), capabilities (7), ip (7), rtnetlink (7) この文書について この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報 ... 日本語の文書やマニュアルを配布している個人/プロジェクトへのリンクです。