¡¾×ªÌû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;
// Êý¾Ý½øÈëÍø¿¨µÄË÷ÒýºÅ
&
Ïà¹ØÎĵµ£º
ÍøÉÏÓкܶàµÄ×ÊÁÏ£¬²Î¿¼itput£¨http://space.itpub.net/471666/viewspace-215923£©µÄ¡£
OS : Redhat
DB : Oracle 10.2.0.4.0
1.ÐÞ¸Äjdk ÏÂÃæµÄ×ÖÌå¡£
[oracle@a ~]$ cd $ORACLE_HOME/jdk/jre/lib/
[oracle@a ~]]$ mv font.properties font.properties_bak
[oracle@a ~]]$
[oracle@a ~]]$ cp font.properties.zh_CN.R ......
#find ... -exec rm {} \;
#find ... | xargs rm -rf
Á½Õß¶¼¿ÉÒÔ°ÑfindÃüÁî²éÕÒµ½µÄ½á¹ûɾ³ý£¬ÆäÇø±ð¼òµ¥µÄ˵ÊÇǰÕßÊǰÑfind·¢ÏֵĽá¹ûÒ»´ÎÐÔ´«¸øexecÑ¡ÏÕâÑùµ±ÎļþÊýÁ¿½Ï¶àµÄʱºò£¬¾Í¿ÉÄÜ»á³öÏÖ“²ÎÊýÌ«¶à”Ö®ÀàµÄ´íÎó£¬Ïà±È½Ï¶øÑÔ£¬ºóÕ߾ͿÉÒÔ±ÜÃâÕâ¸ö´íÎó£¬ÒòΪxargsÃüÁî»á·ÖÅú´ÎµÄ´¦Àí½á¹û¡£ÕâÑù¿´À´£ ......
½¨Á¢ARM+LinuxÓ¦ÓóÌÐòµ÷ÊÔ»·¾³
Gdb+gdbserver+insight»·¾³µÄ´î½¨
1. ÏÂÔØgdbÔ´´úÂë http://ftp.gnu.org/gnu/gdb/
2. ÅäÖð²×°gdb+gdbser
$ tar jxvf gdb-6.6.tar.bz2
$ cd x/gdb
$ ./configure --target=arm-linux --prefix=/usr/lo ......
apacheµÄÔ´Âë°²×°
½«Ñ¹Ëõ°ü½âѹ֮ºó½øÈëÏàÓ¦µÄĿ¼
./configure \ #--------------------Ô¤±àÒëÃüÁî
"--prefix=/usr/local/apache" \ #--------------------°²×°Â·¾¶Îª“/usr/local/apache”
"--with-included-apr" \
"--enable-so" \ #--------------------¿ªÆôÏàÓ¦µÄÀ©Õ¹Ä£¿é ......
2008-07-07 22:09
6£¬TCP filterµÄÔÀí£º
µ±filterÊÕµ½Ä³¸öÁ¬½ÓµÄµÚÒ»¸ö±¨ÎÄʱ£¬»áΪ¸ÃÁ¬½ÓÔÚÈ«¾ÖÁ¬½Ó±íÖд´½¨Ò»¸ö±íÏ²¢Óñ¨ÎÄÖÐЯ´øµÄÔ´¡¢Ä¿µÄIPºÍ¶Ë¿ÚÕâ¸öËÄÔª×é´´½¨original tupleºÍreply tuple£¬ÕâÁ½¸ötuple·Ö±ð´Ó²»Í¬·½ÏòÀ´±êʶÕâ¸öÁ¬½Ó¡£ºóÐøµÄ±¨ÎÄ»á¸ù¾ÝÆäЯ´øµÄËÄÔª×éÕÒµ½ÏàÓ¦µÄÁ¬½Ó±íÏȻºó¸ù¾Ý±íÏîËù¼Ç¼ ......