IP結構與操作之in_device結構和in_ifaddr結構


in_device為ip配置塊,關聯了二層設備,包含ip地址列表,組播配置,arp參數,接口配置等;

 1 /* ip配置塊 */
 2 struct in_device {
 3     /* 二層設備 */
 4     struct net_device    *dev;
 5     /* 引用計數 */
 6     atomic_t        refcnt;
 7     /* 是否正在銷毀 */
 8     int            dead;
 9     /* ip地址列表 */
10     struct in_ifaddr    *ifa_list;    /* IP ifaddr chain        */
11 
12     /* 組播相關 */
13     struct ip_mc_list __rcu    *mc_list;    /* IP multicast filter chain    */
14     struct ip_mc_list __rcu    * __rcu *mc_hash;
15 
16     int            mc_count;    /* Number of installed mcasts    */
17     spinlock_t        mc_tomb_lock;
18     struct ip_mc_list    *mc_tomb;
19     unsigned long        mr_v1_seen;
20     unsigned long        mr_v2_seen;
21     unsigned long        mr_maxdelay;
22     unsigned char        mr_qrv;
23     unsigned char        mr_gq_running;
24     unsigned char        mr_ifc_count;
25     struct timer_list    mr_gq_timer;    /* general query timer */
26     struct timer_list    mr_ifc_timer;    /* interface change timer */
27 
28     /* arp參數 */
29     struct neigh_parms    *arp_parms;
30     /* 設備接口的一些配置 */
31     struct ipv4_devconf    cnf;
32     struct rcu_head        rcu_head;
33 };

 

in_ifaddr表示地址結構,其成員包含了地址,掩碼,范圍等信息,多個地址連接成鏈表,主地址在前,從地址在后;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM