×ªÔØÓÚVerycd ×÷ÕߣºÒ»µãÔ´¶¼Ã»ÓÐ 2006-3-28, 05:02 AM ÎÒÔÚǰÈýÕÂÒѾ¶Ôipv6µÄ¸ÅÊö¡¢µØÖ··ÖÀà¡¢¶à²¥¡¢×é²¥ºÍ¹ã²¥×öÁËÏàÓ¦µÄ½éÉÜ¡£ÐÂÈËÇëµã»÷ÎÒµÄBlog²é¿´ÒÔǰµÄÎÄÕ¡£ Tcp/ip V6ɨäϵÁÐ[µÚһƪ]£ipv6¸ÅÊö Tcp/ip V6ɨäϵÁÐ[µÚ¶þƪ]£ipv6 µØÖ·ÀàÐÍ£¨µÚÒ»²¿·Ö£© Tcp/ip V6ɨäϵÁÐ[µÚÈýƪ]£ipv6 µØÖ·ÀàÐÍ£¨µÚ¶þ²¿·Ö£© ½ñÌìÎÒ½«¶Ôipv6µÄ±¨Îĸñʽ½øÐÐÌÖÂÛ¡£ÔÚÎÄÕºóÃæ£¬ÎÒ»¹»á¼òµ¥½²ÊöÒ»ÏÂipv6µÄMTU¼°ÉϲãУÑéºÍ¡£ Ò»¡¢µäÐ͵Ä...
by qintel - ÍøÂç¼¼ÊõÎĵµÖÐÐÄ - 2006-09-08 09:18:55 ÔĶÁ£¨2607£© »Ø¸´£¨0£©
ÓÉÓÚ¹«Ë¾ÐèÒª£¬ÎÒÔÚһ̨CentOSÉÏÃæ²¿Êðpostfixºó£¬ÅäÖÃÁ˶àʵÀýÓ¦Ó㻡¾posfix1£º1.1.1.1--mail.a.com¡¿£»¡¾postfix2£º2.2.2.2-----mail.b.com¡¿£»Ê¹µÃ¶àʵÀýÓ¦Óᣠµ«ÊÇÔÚ#telnet 1.1.1.1 25 ²âÊÔ·¢Ðźó£¬ÊÕµ½µÄÐżþµÄÏÔʾÖУºunkonwn 2.2.2.2¡£¡£¡£¡£¡£¡££»ÖÂʹÐżþ´Ó2.2.2.2 b.comÕâ¸öÓòÖз¢³ö¡£ ÕâÑùºó¹û½«µ¼Ö£¬Á÷Á¿¡¢ÓòÃû²»ÄܺÏÀíÔËÓà ¼±Ç󻨏´
ÏÂÃæÊÇipÍ·½á¹¹µÄÒ»²¿·Ö£¬ÎªÊ²Ã´ÒªÕâÑù£¿Ð»Ð» #if BYTE_ORDER == LITTLE_ENDIAN u_char ip_hl:4, /* header length */ ip_v:4; /* version */ #endif #if BYTE_ORDER == BIG_ENDIAN u_char ip_v:4, /* version */ ip_hl:4; /* header length */ #endif
ÏÂÃæÊÇipÍ·½á¹¹µÄÒ»²¿·Ö£¬ÎªÊ²Ã´ÒªÕâÑù£¿Ð»Ð» \r\n\r\n#if BYTE_ORDER == LITTLE_ENDIAN \r\nu_char ip_hl:4, /* header length */ \r\nip_v:4; /* version */ \r\n#endif \r\n#if BYTE_ORDER == BIG_ENDIAN \r\nu_char ip_v:4, /* version */ \r\nip_hl:4; /* header length */ \r\n#endif
ÏÂÃæÊÇipÍ·½á¹¹µÄÒ»²¿·Ö£¬ÎªÊ²Ã´ÒªÕâÑù£¿Ð»Ð» #if BYTE_ORDER == LITTLE_ENDIAN u_char ip_hl:4, /* header length */ ip_v:4; /* version */ #endif #if BYTE_ORDER == BIG_ENDIAN u_char ip_v:4, /* version */ ip_hl:4; /* header length */ #endif
ÎÒÖªµÀÕâ¸öÎÊÌâÓ¦¸ÃÒªÔÚ°²È«ÄǸö°æ¿éÈ¥£¬µ«ÓÉÓÚÕâ¸ö°æ¿éÈ˶àһЩ£¬ËùÒÔ·ÅÔÚÕâ¸ö°æ¿é£¬Ï£Íû°æÖ÷²»Òª½éÒâ°¡£¡£¡ iptablesÔÚ²»¸Ä±äÔ´µØÖ·µÄÇé¿öÏ£¬ÔÚÍ·²¿¼Ó¸öip¸ÃÔõô×ö°¡£¡
ipv4Êײ¿Ò»°ãÊÇ20×Ö½Ú³¤¡£ÔÚÒÔÌ«ÍøÖ¡ÖУ¬ipv4°üÊײ¿½ô¸ú×ÅÒÔÌ«ÍøÖ¡Êײ¿£¬Í¬Ê±ÒÔÌ«ÍøÖ¡Êײ¿ÖеÄÐÒéÀàÐÍÖµÉèÖÃΪ080016¡£ ipv4Ìṩ²»Í¬£¬´ó²¿·ÖÊǺÜÉÙÓõÄÑ¡ÏʹµÃipv4°üÊײ¿×¿ÉÀ©Õ¹µ½60×Ö½Ú(×ÜÊÇ4¸ö×Ö½Ú4¸ö×Ö½ÚµÄÀ©Õ¹) 0 4 8 12 16 19 24 31 °æ±¾ Êײ¿³¤¶È ·þÎñÀàÐÍ ³¤¶È ÈÏÖ¤ ±êÖ¾ ¶ÎÆ«ÒÆÁ¿ TTL ÐÒé УÑéºÍ Ô´ipµØÖ· Ä¿µÄipµØÖ· Ñ¡Ïî ... ip°üÍ·×Ö¶Î˵Ã÷ °æ±¾£º4λ£¬Ö¸¶¨ipÐÒéµÄ°æ±¾ºÅ¡£ °üÍ·³¤¶È(IHL)£º4룬ipÐÒé°üÍ·µÄ...
ipv4Êײ¿Ò»°ãÊÇ20×Ö½Ú³¤¡£ÔÚÒÔÌ«ÍøÖ¡ÖУ¬ipv4°üÊײ¿½ô¸ú×ÅÒÔÌ«ÍøÖ¡Êײ¿£¬Í¬Ê±ÒÔÌ«ÍøÖ¡Êײ¿ÖеÄÐÒéÀàÐÍÖµÉèÖÃΪ080016¡£ ipv4Ìṩ²»Í¬£¬´ó²¿·ÖÊǺÜÉÙÓõÄÑ¡ÏʹµÃipv4°üÊײ¿×¿ÉÀ©Õ¹µ½60×Ö½Ú(×ÜÊÇ4¸ö×Ö½Ú4¸ö×Ö½ÚµÄÀ©Õ¹) 0 4 8 12 16 19 24 31 °æ±¾ Êײ¿³¤¶È ·þÎñÀàÐÍ ³¤¶È ÈÏÖ¤ ±êÖ¾ ¶ÎÆ«ÒÆÁ¿ TTL ÐÒé УÑéºÍ Ô´ipµØÖ· Ä¿µÄipµØÖ· Ñ¡Ïî ... ip°üÍ·×Ö¶Î˵Ã÷ °æ±¾£º4λ£¬Ö¸¶¨ipÐÒéµÄ°æ±¾ºÅ¡£ °üÍ·³¤¶È(IHL)£º4룬ipÐÒé°üÍ·µÄ...
×î½üæÓÚÀàËÆlinuxÏÂvpnÏà¹ØµÄ¿ª·¢£¬ÏÖÔÚÓöµ½Ò»¸ö¼¼ÊõµãÉϵÄÎÊÌ⣬ʼÖÕ½â¾ö²»ÁË£¬ÏëÎÊÎÊÓÐÏà¹Ø¾ÑéµÄÅóÓÑ¡£Ð»Ð» ±ÈÈ磬ÎÒ·¢ËÍÊý¾Ý°üÊÇ£¬ÔÚÐÒéÕ»µÄip²ã£¬ÐèÒª×Ô¼ºÊÖ¶¯Ôٴηâ×°Ò»¸öµÄipÍ·ÔÚ·¢ËͳöÈ¥¡£ÏÖÔÚ£¬ÎÒÔÚ¿Í»§¶ËºÍ·þÎñÆ÷¶Ë¶¼Ð´ºÃÁËÊÖ¶¯·â×°ipÍ·ºÍÊÖ¶¯²ð·âipÍ·£¬µ«£¬Ê¼ÖÕ²»³É¡£ÎÒ×¥°ü£¬ÏÔʾ°Ñ·â×°ºÃipÍ·µÄÊý¾Ý°üѹ¸ù¾Íû·¢³öÈ¥£¬ºÃÏñÌáʾÊǸö»µ°ü¡£ÕÛÌÚÁ˺ܾ㬾ÍÊÇÕÒ²»µ½ÎÊÌâ¡£ ÓÐûÓУ¬ÅóÓÑÓйýÕâÑùµÄ¾Àú£¬¸øÐ©½¨ÒéºÍ¾Ñé...
ÇëÎÊ£¬ÎÒÈç¹ûÖØÐ·ÖÅäÒ»¸öskb struct sk_buff* new_skb = alloc_skb(SIZE,GFP_ATOMIC); ÄÇÎÒÖØÐ»ñµÃipÍ·µÄ»°»¹ÊÇ struct iphdr* iph = ip_hdr(new_skb); ¿ÉÒÔÂ𣿠ÎÒÕâô×öÁË£¬µ«ÊÇÎÒ printk("ip version is:%d",new_skb->version); ÎÞ·¨µÃµ½½á¹û£¬Äں˻ᱨ´í¡£ ËùÒÔÕâÖÖ·½·¨ÊDz»ÊDz»ÄÜ»ñµÃipÍ·£¿ ÒªÔõô×öÄØ£¿
Ôõô¸ö¼ÆËã·½·¨? ÎÒ²éÁËÒ»ÏÂ,µ«ÊÇÀí½âÉÏÓеãÎÊÌâ. ´ó¼Ò¸øÏêϸ½âÊÍÏÂÏ¡£ ÊDz»ÊǰÑÊý¾ÝÖÐÿ¸ö16Ïà¼Ó,È»ºó¸³Öµ¸øÒ»¸ö32λÊý. È»ºó¶Ô¸Ã32λÊý¸ßλ+µÍλ(16λ), È»ºóÇó·´ÄØ? unsigned short csum(unsigned char *addr, int count) { /* Compute Internet Checksum for "count" bytes *...