程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> VC >> 關於VC++ >> 基於IP/UDP協議的sock編程

基於IP/UDP協議的sock編程

編輯:關於VC++

在VC知識庫我學到了很多知識,很短的時間我就掌握了vc,主要是在貴站下了很多源代碼回來分析,學習。看了你處有人將net send封裝進行消息群發的源代碼,有看見網上某某公司消息群發軟件要花錢才能購買,於是有感自己編寫一個消息群發小程序。

特點:

vc源代碼,基於IP/UDP協議的sock編程,按messager 服務的通信協議填寫UDP數

據包,可在沒有net send命令的win98 win95下實現消息發送,代碼裡含有messager 的通

信協議。並支持文本內容,ASCII文本圖象發送。做廣告很不錯。在消息顯示中可屏蔽自

己的主機名。

win2000/xp默認開著信使服務(messager),端口是135,網絡通信方式采用ip/udp協議。一般這種服務使用於局域網,如果用代理就可繞過網關將消息發出去。

我們先來分析一下ip數據包的結構吧。

一個符合信使服務的數據包前面加上udp包頭(8字節),就構成了udp包。udp包前面加上20個字節的ip包頭,就構成了ip包。既是ip包裡前28個字節是網絡協議,從第29字節開始才是messager所接受的內容。以下簡稱消息包,消息包前80個字節為消息包頭,當中第41到44字節為長整型變量,存放發送時間,第75到78字節為長整型,存放整個消息包-消息包頭的大小。接下來3個域,每個域頭大小12個字節,前4個和後4個字節(長整型)都為該域的大小(分配大小取偶),第一個域表示發送主機名,第二個表示接受主機名,第三個表示內容。*/

|=====20======|====8====|=========80============|=12=|from|=12=|to|=12=| 消息

///////////////////////////////////////////////////////////////////////

直接采用socket udp協議,發送消息無法隱藏自己的ip,別人用網絡工具可查到你

的ip,如果前28個字節都自己加工,采用原始套接字方式進行發送,偽裝了ip,不怕

查ip;^_^!

本文配套源碼

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved