原创 freeradius中rlm_sqlcounter模塊對時間和流量限制的實驗筆記

實驗環境 fedora6 kernel:2.6.18-1.2798.fc6 mysql 5.0.22 freeradius 1.1.7 該模塊可以生成一個臨時的check屬性,該屬性的值通過sql語句從sql數據庫中的raddacct

原创 UNIX常用的IP表示掩碼方式轉換爲字符串的程序實現方法

一種IP的表示方式爲192.168.1.1/24,其數字24的含義爲24位掩碼,即掩碼爲255.255.255.0,程序中讀入的類似192.168.1.1/24的字符串可能需要轉換爲IP地址和掩碼兩個字符串保存或處理,即將192.168.1

原创 關於const與指針搭配使用的一點記錄

const限定符指定了一個變量爲只讀變量,是不允許被改變的,因此const變量在定義時就必須初始化。 const在與指針搭配時,使用將變的複雜和微妙。簡單的說const搭配指針就會出現以下三種情況: 指向const變量(對象)的指針 c

原创 開啓ANSI彩色輸出

向來寫的調試信息都是隨意輸出,無論是查看起來還是寫起代碼來都不方便,於是寫了一個debug信息輸出庫,便於輸出debug信息。 debug信息分爲close,info,warning,error,critical五級,分別以不同的顏色輸出

原创 使用setitimer和signal創建一個計時器

無聊之中,學習了一下setitimer函數的使用,整理一下,做個記錄。 getitimer,setitimer - get or set value of an interval timer,man的第一句話是這樣寫的。其中的用法寫的很詳細

原创 C hash table code

This code modified from internet,insert IP and MAC to hashtable. Key is the last 16bit of MAC. too busy without search a

原创 使用原始套接字SOCK_RAW捕捉網絡數據包並簡單分析

協議的分析需要參考前一篇文章以太網幀格式,IP包頭,TCP頭格式說明。 抓取網絡上的數據包需要設置網卡爲混雜模式,調用recvfrom在創建的SOCK_RAW類型的socket上接收來自kernel的信息,然後再按照幀格式,IP頭,TCP頭

原创 我的友情鏈接

51CTO博客開發

原创 IPv4組播通信原理

摘自網絡,感謝原作者 摘要: 本文試圖成爲學習TCP/IP網絡組播技術的入門材料。文中介紹了組播通信的概念及原理,以及用於組播應用編程的Linux API的詳細資料。爲了使讀者更加完整的瞭解Linux 組播的整體概念,文中對實現該技術的

原创 malloc內存分配筆記

首先需要了解的基礎知識,也是非常重要的內容,就是C所定義的數據類型了。 通常計算機存儲的最小單位是字節(Byte),一個字節是8個bit。數據類型做佔用的字節數遵循ILP32或LP64規範,如下表所示。x86/Linux/gcc,遵循ILP

原创 strftime和strptime使用

[singlepic id=32 w=320 h=240 float=left]整理自《linux程序設計》 這兩個函數都是時間日期的格式控制函數,在功能上看起來正好相反。strftime將一個tm結構格式化爲一個字符串,strptime

原创 啓用dhcp relay爲不同子網分配IP

[singlepic id=3 w=320 h=240 float=right]前幾天做個DHCP的服務器,需要啓用relay爲不用的子網分配IP。在搜索了相關資料後,發現存在一些問題。現將自己的試驗過程整理。 環境爲fedora 6,安

原创 關於gcc編譯使用mysql庫的程序

有關c語言操作mysql數據庫的源程序在這裏就不列了,網上隨手可以抓到一把。 我在這裏遇到的問題是寫好的程序編譯不正確。 測試環境: inter pentium dual CPU fedora 6,linux kernel 2.6.

原创 異機遠程連接mysql時user表內的用戶權限設置

默認情況下Linux內的mysql數據庫mysql,user表內的用戶權限只是對localhost即本機才能登陸。需要更改權限: 如下的方式確認: root#mysql -h localhost-u mysql -p Enter pa

原创 靜態庫/動態庫的編譯和使用方法學習記錄

本文參考資料:《Linux編程一站式學習》 版權 © 2008, 2009 宋勁杉, 北京亞嵌教育研究中心 部分內容摘自此文 有時候需要把一組代碼編譯成一個庫,這個庫在很多項目中都要用到,例如libc就是這樣一個庫,我們在不同的程序中都會