¡¾×ªÌûLINUX¡¿IP·ÖÆ¬ÖØ×é·ÖÎö
±¾ÎĵµµÄCopyleft¹éyfydzËùÓУ¬Ê¹ÓÃGPL·¢²¼£¬¿ÉÒÔ×ÔÓÉ¿½±´£¬×ªÔØ£¬×ªÔØÊ±Çë±£³ÖÎĵµµÄÍêÕûÐÔ£¬ÑϽûÓÃÓÚÈκÎÉÌÒµÓÃ;¡£
msn: yfydz_no1@hotmail.com
À´Ô´£ºhttp://yfydz.cublog.cn
1. ǰÑÔ
¶ÔIPË鯬µÄÖØ×éÊÇ·À»ðǽÌá¸ß°²È«ÐÔµÄÒ»¸öÖØÒªÊֶΣ¬Í¨¹ýÌáǰ½øÐÐË鯬֨×飬¿ÉÒÔÓÐЧ·ÀÓù¸÷ÖÖË鯬¹¥»÷£¬LinuxÄں˵ķÀ»ðǽnetfilter¾Í×Ô¶¯¶ÔIPË鯬°ü½øÐÐÁËÖØ×飬±¾ÎĽéÉÜLinuxÄÚºËÖеÄIPÖØ×é¹ý³Ì£¬Äں˴úÂë°æ±¾2.4.26¡£
2. ´¦ÀíÁ÷³Ì
ʵÏÖIPÖØ×éµÄ»ù±¾º¯ÊýΪip_defrag()£¬ÔÚnet/ipv4/ip_fragment.cÖÐʵÏÖ£¬»ù±¾¹ý³ÌÊǽ¨Á¢Ë鯬´¦Àí¶ÓÁУ¬¶ÓÁÐÖÐÿ¸ö½ÚµãÊÇÒ»¸öÁ´±í£¬Õâ¸öÁ´±í±£´æÍ¬Ò»¸öÁ¬½ÓµÄË鯬£¬µ±Ë鯬¶¼µ½´ïÖ®ºó½øÐÐÊý¾Ý°üÖØ×飬»òÕßÔÚÒ»¶¨Ê±¼ä(ȱʡ30Ãë)ÄÚËùÓÐË鯬°ü²»Äܵ½´ï¶øÊͷŵô¡£
2.1 Êý¾Ý½á¹¹
ÔÚ´¦Àí·ÖƬ°üʱ£¬½«skb°üµÄcb×ֶα£´æË鯬¿ØÖÆÐÅÏ¢struct ipfrag_skb_cb¡£
#define FRAG_CB(skb) ((struct ipfrag_skb_cb*)((skb)->cb))
struct ipfrag_skb_cb
{
struct inet_skb_parm h;
int offset;
};
ipq¶ÓÁнڵã½á¹¹£º
/* Describe an entry in the "incomplete datagrams" queue. */
struct ipq {
// ÏÂÒ»¸ö
struct ipq *next; /* linked list pointers */
// ×îÐÂʹÓÃÁ´±í
struct list_head lru_list; /* lru list member */
// ÒÔÏÂ4ÏîÓÃÀ´Æ¥ÅäÒ»×éIP·ÖÅä
u32 saddr;
u32 daddr;
u16 id;
u8 protocol;
// ״̬±êÖ¾
u8 last_in;
#define COMPLETE 4 // Êý¾ÝÒѾÍêÕû
#define FIRST_IN 2 // µÚÒ»¸ö°üµ½´ï
#define LAST_IN 1 // ×îºóÒ»¸ö°üµ½´ï
// ½ÓÊÕµ½µÄIPË鯬Á´±í
struct sk_buff *fragments; /* linked list of received fragments */
// lenÊǸù¾Ý×îÐÂIPË鯬ÖÐµÄÆ«ÒÆÐÅÏ¢µÃ³öµÄÊý¾Ý×ܳ¤
int len; /* total length of original datagram */
// meatÊÇËùÓÐËéÆ¬Êµ¼Ê³¤¶ÈµÄÀÛ¼Ó
int meat;
spinlock_t lock;
atomic_t refcnt;
// ³¬Ê±
struct timer_list timer; /* when will this queue expire? */
// ǰһÏî¶ÓÁеØÖ·
struct ipq **pprev;
// Êý¾Ý½øÈëÍø¿¨µÄË÷ÒýºÅ
&
Ïà¹ØÎĵµ£º
¿É°²×°ÔÚUÅÌÉϵIJÙ×÷ϵͳ Puppy Linux 4.1 Beta
Ò»¡¢ UÅ̰²×°Puppy Linux·½·¨
1¡¢ÏÂÔØ°²×°FlashBoot¡£¿ÉÒÔÔÚgoogleÉÏËÑÒ»ÏÂÏÂÔØ
ÔËÐÐFlashBoot£¬°´ÏÂͼºìÉ«¿òÑ¡Ôñ£¬µã¡¾ÏÂÒ»²½¡¿
Ñ¡ÔñÄãÏÂÔØµÄiso¾µÏñ£¬¡¾ÏÂÒ»²½¡¿
Ñ¡ÔñÄãµÄUÅÌÅÌ·û£¬²»ÒªÑ¡´íÁË¡£µã¡¾ÏÂÒ»²½¡¿
ÕâÒ»²½Òª×¢Ò⣬ĬÈÏÑ¡ÔñµÄÊDz»¸ñÅÌ¡£ ......
½ñÌìÔÚGentooϰ²×°ÁËVirtualBoxÐéÄâÁËÒ»¸öXP£¬ÕâÑùÐèҪѸÀ×µÈһЩֻÓÐFor WindowsϵÄÈí¼þʱºò²»ÓñØÐëÖØÐÂÆô¶¯Çл»µ½WindowsÏÂÁË¡£
ÏÔÈ»Á½¸öOS֮ǰµÄÎļþ½»»»Ò²ºÜ¹Ø¼ü£¬½â¾ö·½°¸Ò²·Ç³£µÄ¼òµ¥¡£
1£©ÔÚGentooϰ²×°openssh
emerge openssh
2£©ÔÚwindows¿Í»§»úÉϰ²×°FileZilla
......
“Sudo”ÊÇUnix/Linuxƽ̨ÉϵÄÒ»¸ö·Ç³£ÓÐÓõŤ¾ß£¬ËüÔÊÐíϵͳ¹ÜÀíÔ±·ÖÅ䏸ÆÕͨÓû§Ò»Ð©ºÏÀíµÄ“ȨÀû”£¬ÈÃËûÃÇÖ´ÐÐһЩֻÓг¬¼¶Óû§»òÆäËûÌØÐíÓû§²ÅÄÜÍê³ÉµÄÈÎÎñ£¬±ÈÈ磺ÔËÐÐһЩÏñmount£¬halt£¬suÖ®ÀàµÄÃüÁ»òÕß±à¼Ò»Ð©ÏµÍ³ÅäÖÃÎļþ£¬Ïñ/etc/mtab£¬/etc/samba/smb.confµÈ¡£ÕâÑùÒÔÀ´£¬¾Í²»½ö¼õÉÙÁ ......
http://blog.csdn.net/dinitial/archive/2009/02/22/3923447.aspx
ǰһ¸ö½×¶ÎÖ÷ÒªÊÇÔÚWindowsxpÏ£¬Í¨¹ýADS1.2¡¢H-JTAGºÍDNWÀ´¶Ô´úÂë½øÐб༺͵÷ÊÔ¡£ÏÖÔÚתµ½LinuxÏ£¬ÀûÓÃRedHat9.0+ÐéÄâ»ú×÷Ϊ¿ª·¢»·¾³£¬ÕâÀォÕâÁ½ÌìÀ´¶Ô»·¾³µÄÅäÖü°ÆäÓöµ½µÄÎÊÌâ×ܽáһϡ£
¿ª·¢°åΪGEC2410£¬ÔÚ ......
2008-07-07 22:09
3£¬init_conntrack£º
init_conntrackÓÃÓÚ´´½¨Ò»¸öеÄip_conntrack£¬²¢¶ÔÆä½øÐгõʼ»¯¡£
/*1,ÿһ¸öÁ¬½Ó°üº¬Á½¸ötuple£¬originalºÍreply£¬ip_ct_invert_tuple ¸ù¾Ý´«ÈëµÄoriginal tuple»ñÈ¡Æäreply tuple£¬Æä×îÖÕ½«µ÷ÓÃËùÊôÐÒéµÄinvert_tuple Íê³É´¦Àí*/
if (!ip_ct_invert_tuple(& ......