區域網通訊之簡單介紹

2021-07-01 20:18:52 字數 674 閱讀 5734

區域網內通訊都是通過mac位址來識別不同的主機的,例:一區域網閘道器為192.168.1.1,主機a ip位址192.168.1.2,主機b ip位址192.168.1.3 。主機a ping主機b,由於a不知道b的mac位址,所以無法直接通訊,a先在區域網內發出廣播包:誰是192.168.1.3, 區域網內的所有主機都會收到a的廣播包,只不過正常情況下只有b應答,其餘主機均忽略a發出的包。b向a發出應答包,這個包是廣播包,通報自己的mac位址。這樣a就知道了b的ip位址,這樣ping命令繼續,icmp協議之類的等等。

因為區域網內的通訊是基於mac位址的,我們就可以mac位址欺騙,我們可以向外傳送虛假的mac位址包。上例中:a廣播查詢b的mac位址,b會應答,我們假設還有乙個c也應答,且c在不停的發包,我是b,我的mac是。。。。這樣區域網內就會錯誤的認為c是b,本應該傳送給b的包,傳送給了c,c擷取了b的訊息。如:b主機 ping www.bitscn.com, 可以正常顯示,其實是c在其中**的效果。這種攻擊方式叫做中間人攻擊(man in the middle)。

閘道器欺騙,其實就是上例中的主機c冒充閘道器,有這樣乙個場景:區域網內a、c。c向閘道器發訊息說我是a,且c向a發訊息說我是閘道器,c本身開啟包**功能。這樣c就成功的竊聽了閘道器與a之間的會話,a和閘道器之間的訊息都會經過c**,如果這時候a登陸了某**,而使用者名稱和密碼等敏感資訊有沒有加密,這樣c就可以直接獲取到a的賬戶資訊了。

Android socket區域網通訊

然後需要設定網路許可權,也就是在androidmaifest裡面新增internet許可權 public static string getlocalipaddress catch socketexception e return null 就可以獲取到本機的ip位址。在做第一次連線測試的時候,只需...

跨越區域網通訊(一)

通過adsl聯網的兩台主機怎麼才能相互通訊呢?對於一般的adsl使用者來說,通過adsl聯網都是動態ip,即它們的ip位址是不固定的。當它們聯上外網,電信給它乙個外網ip位址,當它斷開後電信會 此ip位址。重新聯網後,電信會根據剩餘的ip位址列表給出乙個新的外網ip位址。在socket通訊中,我們都...

android區域網通訊框架

該框架支援訊息失敗重複,訊息傳送成功或失敗的返回,支援心跳包,支援服務端斷網重連,話不多說直接上圖 上圖是整個框架的結構圖 tcpservice是服務端通訊的類,負責監聽客戶端連線請求,維護客戶端列表 finder是服務端,客戶端端搜尋的基類 subordinatefinder是服務端用來發現客戶端...