日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

原始套接字简介

發布時間:2023/11/30 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 原始套接字简介 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?一?原始套接字概述

原始套接字,指在傳輸層下面使用的套接字。流式套接字和數據報套接字這兩種套接字工作在傳輸層,主要為應用層的應用程序提供服務,并且在接收和發送時只能操作數據部分,而不能對IP首部或TCP和UDP首部進行操作,通常把這兩種套接字稱為標準套接字。

但是,如果我們開發的是更底層的應用,比如發送一個自定義的IP包、UDP包、TCP包或ICMP包,捕獲所有經過本機網卡的數據包,偽裝本機的IP,想要操作IP首部或傳輸層協議首部,等等,這些功能對于這兩種套接字就無能為力了。這些功能需要使用另一種套接字來實現,這種套接字叫作原始套接字,功能更強大,更底層。

原始套接字可以在鏈路層收發數據幀。

二?原始套接字和標準套接字的區別

原始套接字可以自動組裝數據包(偽裝本地IP和本地MAC),可以接收本機網卡上所有的數據幀(數據包)。另外,必須在管理員權限下才能使用原始套接字。

原始套接字直接置“根”于操作系統網絡核心(Network?Core),而SOCK_STREAM、SOCK_DGRAM則“懸浮”于TCP和UDP協議的外圍,如下圖所示:

流式套接字只能收發TCP協議的數據,數據報套接字只能收發UDP協議的數據,原始套接字可以收發沒經過內核協議棧的數據包。

三?原始套接字的編程方法

原始套接字的編程和UDP的編程方法差不多,也是創建一個套接字后,通過這個套接字收發數據。重要區別是原始套接字更底層,可以自行封裝數據包,制作網絡嗅探工具,實現拒絕服務攻擊,實現IP欺騙,等等。面向鏈路層的原始套接字用于在MAC層(二層)上收發原始數據幀,這樣就允許用戶在用戶空間完成MAC上各個層次的實現。
?

原文鏈接:https://blog.csdn.net/chengqiuming/article/details/89577351

?

原始套接字和普通的TCP套接字有什么不同:https://zhidao.baidu.com/question/495793746.html

總結

以上是生活随笔為你收集整理的原始套接字简介的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。