導航:首頁 > 網路安全 > 如何從網路埠獲取數據

如何從網路埠獲取數據

發布時間:2022-06-23 20:49:00

『壹』 如何抓取一個區域網的所以的網路流量數據包

1、使用網路嗅探工具,也就是俗稱sniffer的工具,這類工具有很多,有專業的sniffer pro,也有iris的抓包工具,還有許多簡單點的。這種是通過抓取低層數據包,並根據上層HTTP、FTP、MAIL等協議解碼,功能強弱跟軟體有關。

2、原理就是將我們的網卡設置為混雜模式。我們知道網卡在鏈路層通信時的地址是MAC,網卡根據目標的MAC地址來確認是不是發給自己的包。在混雜模式下,網卡會接收所有網路中的數據包,不管是不是發給自己的。這樣就可以得到網路中的所有數據了。
3、問題是在交換機環境下,交換機會首先分析MAC地址,然後只把數據包轉發到對應的埠去。這樣一來,除了廣播包和多播包,我們的網卡只能接收到發給自己的數據包了,混雜模式下也無效了。
4、為了解決3這種問題,就分別針對交換機的工作原理和鏈路層通信的原理提出了不同的解決辦法。比如通過發送大量的廣播包,造成廣播風暴,造成交換機沒有更多能力來處理上層數據的分析工作,迫使交換機工作在物理層,相當於成了一個HUB,就會在所有埠中轉發所有的數據包。另一種是中間人攻擊,即偽造通信雙方的MAC同時向雙方發信,使雙方都把我們誤以為是對方,從而將要發到對方的數據包發送給我們,我們在收到的同時再給過處理轉發給真正的接受方,這樣就得到數據了。如果能夠把自己偽裝成網關,所有的對外通信就都能拿到了。
5、在無線傳輸的情況下,電波總是在公共區域傳播的,所以必須要對數據進行加密才能保證安全,根據等級和需要可以使用不同的加密方式。這時候也有專門針對無線的sniffer工具,至於能不能解密破解,就需要一點運氣了。
6、這是低層的,還可以根據各層協議原理,有針對性的把自己偽裝成需要的角色,從而獲取到相關信息。比如可以偽裝成DNS、郵件伺服器等等。
7、道高一尺、魔高一丈,有漏洞就有解決辦法。比如對交換機進行專門的設置,在風暴時使用保守的丟包處理方式,或者綁定到IP地址,或者應用層的HTTPS、DNS擴展協議。總是在攻守當中向前發展。

『貳』 232轉網口後連接電腦可以直接讀取數據嗎

232轉網口後連接電腦可以直接讀取數據。首先點擊電腦桌面左下角的【開始菜單】按鈕,打開開始菜單。然後在裡面點擊【控制面板】按鈕,打開控制面板。然後在控制面板界面,點擊【添加列印機然後會打開添加列印機窗口,點擊下面的添加網路列印機。然後可以自動搜索網路列印機,將要連接的列印機搜索出來,點擊將其選中。

讀取數據方法

可以點擊【我需要的列印機不在列表中】按鈕,在裡面按照名稱或者TCP/IP或主機名查找網路列印機,在點擊選中,點擊【下一步】。

然後在裡面配置好主機或IP,以及連接的借口,將這些配置完畢點擊【下一步】,最後完成窗口設置就可以連接無線列印機成功,我們就可以使用這個電腦,使用無線列印機上列印了。

『叄』 windows用c語言怎麼直接從網口接收數據,不用建立tcp連接

因為不太了解GOOSE協議,幾分鍾簡單google了一下,wikipedia上說的語焉不詳,是這樣的,在windows平台,用戶態都是通過socket進行網路通信的,但socket是位於tcp/ip之上的一套操作介面,它可以操作tcp/udp數據,也可以通過raw方式操作ip數據,但無論如何,都在網路層之上,如果GOOSE協議不是tcp/ip之上的協議,那麼就得寫ndis協議驅動了,以在pc側網卡設備之上支持這種協議(或者幸運的話,對端設備提供了windows平台的驅動那更好,如果是這樣,則查看用戶手冊,如何使用它)

『肆』 怎麼從介面里獲取數據、、

不如考慮聯合編程,用別的軟體讀取,再經matlab處理
Matlab是否支持調用usb介面,就像調用串口一樣

方法一:使用
VC++
提供的串列通信控制項
MSComm
首先,在對話框中創建通
信控制項,若
Control
工具欄中缺少該控制項,可通過菜單
Project

> Add to
Project

> Components and Control
插入即可,再將該控制項從工具箱中拉
到對話框中。此時,你只需要關心控制項提供的對

Windows
通訊驅動程序的

API
函數的介面。
換句話說,
只需要設置和監視
MSComm
控制項的屬性和事件。


ClassWizard
中為新創建的通信控制項定義成員對象(
CMSComm
m_Serial
),通過該對象便可以對串口屬性進行設置,
MSComm
控制項共有
27
個屬性,這里只介紹其中幾個常用屬性:

CommPort
設置並返回通訊埠號,預設為
COM1


Settings
以字元串的形式設置並返回波特率、
奇偶校驗、
數據位、
停止位。

PortOpen
設置並返回通訊埠的狀態,也可以打開和關閉埠。

Input
從接收緩沖區返回和刪除字元。

Output
向發送緩沖區寫一個字元串。

InputLen
設置每次
Input
讀入的字元個數,
預設值為
0

表明讀取接收緩


區中的全部內容。

InBufferCount
返回接收緩沖區中已接收到的字元數,將其置
0
可以清除
接收緩

沖區。

InputMode
定義
Input
屬性獲取數據的方式(為
0
:文本方式;為
1
:二
進制方式)。

RThreshold


SThreshold
屬性,表示在

OnComm
事件發生之前,
接收緩沖區或發送緩沖區中可以接收的字元數。

以下是通過設置控制項屬性對串口進行初始化的實例:

BOOL CSampleDlg:: PortOpen()
{
BOOL m_Opened;
……

m_Serial.SetCommPort(2); //
指定串口號

m_Serial.SetSettings(「4800,N,8,1″); //
通信參數設置

m_Serial.SetInBufferSize(1024); //
指定接收緩沖區大小

m_Serial.SetInBufferCount(0); //
清空接收緩沖區

m_Serial.InputMode(1); //
設置數據獲取方式

m_Serial.SetInputLen(0); //
設置讀取方式

m_Opened=m_Serail.SetPortOpen(1); //
打開指定的串口

return m_Opened;
}

打開所需串口後,
需要考慮串口通信的時機。
在接收或發送數據過程中,

能需要監視並響應一些事件和錯誤,
所以事件驅動是處理串列埠交互作用的一
種非常有效的方法。
使用

OnComm
事件和

CommEvent
屬性捕捉並檢查通
訊事件和錯誤的值。發生通訊事件或錯誤時,將觸發

OnComm
事件,
CommEvent
屬性的值將被改變,應用程序檢查

CommEvent
屬性值並作出
相應的反應。在程序中用
ClassWizard

CMSComm
控制項添加
OnComm

息處理函數:

void CSampleDlg::OnComm()
{
……

設數據發送時間間隔
TimeCycle
相同的定時器:
SetTimer(1,TimeCycle,NULL)
,進行定時讀取或發送。

CSampleView:: OnTimer(UINT nIDEvent)
{
char InputData[30];
m_Serial.ReadData(InputData,30);
//
數據處理

}

若對埠數據的響應時間要求較嚴格,
可採用事件驅動
I/O
讀寫,
Windows
定義了
9
種串口通信事件,較常用的有:

EV_RXCHAR:
接收到一個位元組,並放入輸入緩沖區。

EV_TXEMPTY:
輸出緩沖區中的最後一個字元發送出去。

EV_RXFLAG:
接收到事件字元
(DCB
結構中
EvtChar
成員
)
,放入輸入緩
沖區。

在用
SetCommMask()
指定了有用的事件後,應用程序可調用
WaitCommEvent()
來等待事件的發生。

SetCommMask(hComm,0)
可使
WaitCommEvent()
中止。

方法三

多線程下實現串列通信

方法一,
二適用於單線程通信。
在很多工業控制系統中,
常通過擴展串口連
接多個外設,
各外設發送數據的重復頻率不同,
要求後台實時無差錯捕捉,
採集,
處理,記錄各埠數據,這就需要在自定義的串列通信類中創建埠監視線程,
以便在指定的事件發生時向相關的窗口發送通知消息。

線程的基本概念可詳見
VC++
參考書目,
Windows
內部的搶先調度程序在
活動的線程之間分配
CPU
時間,
Win 32
區分兩種不同類型的線程,一種是用
戶界面線程
UI

User Interface Thread

,
它包含消息循環或消息泵,用於處
理接收到的消息;另一種是工作線程(
Work Thread
),它沒有消息循環,用
於執行後台任務。用於監視串口事件的線程即為工作線程。

多線程通信類的編寫在埠的配置,
連接部分與單線程通信類相同,
在埠
配置完畢後,
最重要的是根據實際情況,
建立多線程之間的同步對象,
信號燈,
臨界區,事件等,相關細節可參考
VC++
中的同步類。

一切就緒後即可啟動工作線程:

CWinThrea *CommThread = AfxBegin
Thread(CommWatchThread, //
線程函數名

(LPVOID) m_pTTYInfo, //
傳遞的參數

THREAD_PRIORITY_ABOVE_NORMAL, //
設置線程優先順序

(UINT) 0, //
最大堆棧大小

(DWORD) Create_SUSPENDED , //
創建標志

(LPSECURITY_ATTRIBUTES) NULL); //
安全性標志

同時,在串口事件監視線程中:

if(WaitCommEvent(pTTYInfo->idComDev,&dwEvtMask,NULL))
{
if((dwEvtMask & pTTYInfo->dwEvtMask )== pTTYInfo->dwEvtMask)
{
WaitForSingleObject(pTTYInfo->hPostEvent,0xFFFFFFFF);
ResetEvent(pTTYInfo->hPostEvent); //
置同步事件對象為非信號態

::PostMessage(CSampleView,ID_COM1_DATA,0,0); //
發送通知消息

}
}


PostMessage()
向指定窗口的消息隊列發送通知消息,相應地,需要在
該窗口建立消息與成員函數間的映射,用
ON_MESSAGE
將消息與成員函數名
關聯。

BEGIN_MESSAGE_MAP(CSampleView, CView)
//{{AFX_MSG_MAP(CSampleView)
ON_MESSAGE(ID_COM1_DATA, OnProcessCom1Data)
ON_MESSAGE(ID_COM2_DATA, OnProcessCom2Data)
…..

//}}AFX_MSG_MAP
END_MESSAGE_MAP()

然後在各成員函數中完成對各串口數據的接收處理,
但必須保證在下一次監
測到有數據到來之前,
能夠完成所有的中間處理工作。
否則將造成數據的捕捉錯
誤。

多線程的實現可以使得各埠獨立,
准確地實現串列通信,
使串口通信具有
更廣泛的靈活性與嚴格性,且充分利用了
CPU
時間。但在具體的實時監控系統
中如何協調多個線程,
線程之間以何種方式實現同步也是在多線程串列通信程序
實現的難點。

一個讀串口的函數:

HANDLE m_hIDComDev;

int ReceiveComm(char* RecCommData)
{
DWORD dRead,dReadNum;

COMSTAT ComStat;

LPDWORD ComError;

char *Data;

ClearCommBreak(m_hIDComDev);

ClearCommError(m_hIDComDev,ComError,&ComStat);

dRead=ReadFile(m_hIDComDev, Data, ComStat.cbInQue,
&dReadNum, NULL); //
接收
200
個字元

//dReadNum
為實際接收位元組數

PurgeComm(m_hIDComDev,PURGE_RXCLEAR);//
清空接收緩沖區

for(int i = 0 i < ComStat.cbInQue; i++)
{
*RecCommData = *Data;

RecCommData++;

Data++;
}

*RecCommData = 『
\
0′;

if(dRead)
return 1;
else
return 0;

}

VC
不是語言
,VC
是編程環境
,C,C++
是編程語言
,VC
中編寫
C,C++
是比較方便的
,
較好的環境
.

vc
編程源程序要求用
C++
語言來編寫
,
在這裏寫一下
C++
語言就可以了吧
!
C++
支持面向對象的程序設計方法
,
並可以使用
MS

MFC,
所開發的軟體穩定性好
,
可移植性

,
軟體與硬體相互獨立
.C++
也是一種混合型的程序設計語言
,
既可以支持傳統的面向過程的
程序設計
,
也支持現在的面向對象的程序設計
(
面向對象的方法實現了軟體的重用問題
,
加速
了軟體的開發過程
),C++
既適合作為系統軟體的描述語言也適合應用軟體的開發語言
,

C

言比它的錯誤檢查機制更強
,
還提供了相關的檢查類
,
以編寫模塊化程度高
,
可重用性和可維
護性佳更適合於大
,
中型程序的開發
.

百新安陽 董行

『伍』 怎樣 根據ip和埠遠程訪問電腦,進行數據採集

一、以windows系統為例查看IP和遠程連接埠的方法:
1.窗口鍵+R,輸入cmd回車
2.輸入ipconfig 看到IP地址
netstat -ano看到埠號
備註:埠和機器上運行的軟體有關,不同的軟體埠不一樣的.例如瀏覽網頁使用80號埠.機器上埠號可能會很多,因為你運行的程序會很多。
二、以linux系統為例查看IP和遠程連接埠的方法:
運行中輸入ifconfig看IP地址
輸入netstat看埠

『陸』 通過IP或者網路埠能不能是實現類似於電話呼叫轉移的技術從而獲取數據為什麼能或者為什麼不能

可以,中間人攻擊就是這樣的。中間人偽裝成你的默認網關,這樣你就把所有數據都發給他了,此時中間人把數據都記錄下來,然後再轉給真正的默認網關,實現數據發送;然後這個中間人同時再偽裝成你,騙網關把原本發給你的數據再發給中間人,他把數據記錄下以後再次發給你,這樣他便截取了你的所有數據,但是你卻無法意識到數據已被截取。
還有就是通過交換機的埠鏡像把你的那個埠數據完整的備份發送到目的機器,然後分析。

『柒』 獲取電腦網路傳輸數據

您好,方法:
1,先將兩台電腦開機,然後用網線連接起來,直接插在平時上網用的埠。
2,先找到電腦里需要傳送的文件。然後設置共享。比如現在要傳送一個磁碟里的文件到另一台電腦上,那我先設置這個磁碟為共享,當然也可以是一個文件夾。方法:選中文件夾,右鍵單擊,點擊共享,依次操作。
3,設置完共享之後查詢ip地址:方法,在運行里輸入cmd,點擊確定,再在彈出的窗口裡輸入ipconfig,然後按回車鍵,這樣就可以看到ip了,並且記下這個ip。
4,將之前查看到的ip地址在另一台電腦里的「運行」里輸入。格式:\\169.254.85.234 然後點擊確定。
5,點確定之後,就可以連接到了兩台電腦了,並且可以看到之前共享的文件。可以選擇文件,右鍵進行復制到本地電腦的磁碟中了。
6,可以打開本地磁碟,右鍵進行復制粘貼,達到文件傳送的目的。此方法可以用來傳送還原系統備份文件,也可以用來共享局域之間的文件。

『捌』 QT怎麼獲取某個網路埠信號來源的IP地址,並可以在已有的資料庫中搜索該IP地址含有的信息,用哪些語句

1。QHostInfo類獲取主機名和ip地址
(1)獲取主機名: QHostInfo::localHostName()
QString localHostName=QHostInfo::localHostName();
(2)獲取ip地址: QHostInfo info=QHostInfo::fromName(localHostName);//根據上邊獲得的主機名來獲取本機的信息
info.addresses();//QHostInfo的address函數獲取本機ip地址
如果存在多條ip地址ipv4和ipv6:
foreach(QHostAddress address,info.addresses())
{
if(address.protocol()==QAbstractSocket::IPv4P)//只取ipv4協議的地址
qDebug()<<address.toString();
}
如果是ipv6地址,可以使用QAbstractSocket::ipv6Protocol來實現。
QHostAddress類是管理ip地址的類,所有的ip都歸這個類管理。

『玖』 如何從某個IP埠讀取數據包,並存入資料庫

問題:第2步驟的數據包是ASCII的字元,在第4步驟中,假設伺服器的IP是192.168.0.23;埠號是1455,我如何將這些數據包記錄下來,存到資料庫庫中呢?請老師幫我一下。
只有數據存好了,我才能去用FOXTABLE去編寫客戶端。

『拾』 如何獲取tcp的埠和其它數據

2、在彈出的「Internet協議(TCP/IP)」對話框中點擊[高級]按鈕。在彈出的「高級TCP/IP設置」中,選擇「選項」標簽,選中「TCP/IP篩選」,然後點擊[屬性]按鈕。
3、在彈出的「TCP/IP篩選」對話框里選擇「啟用TCP/IP篩選」的復選框,然後把左邊「TCP埠」上的「只允許」選上(請見附圖)。
這樣,您就可以來自己添加或刪除您的TCP或UDP或IP的各種埠了。添加或者刪除完畢,重新啟動機器

閱讀全文

與如何從網路埠獲取數據相關的資料

熱點內容
路由器網路設置過程 瀏覽:949
主機與虛擬機如何實現網路互通 瀏覽:275
motoxt701怎麼設置網路 瀏覽:729
蘋果wifi顯示不出網路列表 瀏覽:943
微信電腦設置網路連接 瀏覽:14
網路聊天軟體大全 瀏覽:624
網路還可以用哪個軟體聊天 瀏覽:297
小艾音響怎樣連接無線網路 瀏覽:642
棒谷網路科技怎麼樣 瀏覽:478
網路命令不能執行如何設置 瀏覽:40
繽智怎樣連接移動網路 瀏覽:149
重慶哪些專科有網路與新媒體專業 瀏覽:891
天津武清哪個網路信號好 瀏覽:707
為何手機突然網路特別差 瀏覽:310
數據網路選擇哪個類型的 瀏覽:221
網路無法查看自己共享文件 瀏覽:259
電腦顯示連接找不到網路名稱咋辦 瀏覽:357
硬碟錄像機哪個是網路設置 瀏覽:222
先科牌電視連接wifi沒有網路 瀏覽:609
手機看電視app不用網路 瀏覽:399