raw-sockets

    4熱度

    1回答

    我正在嘗試使用原始套接字構建以太網網絡。我無法使用TCP/IP,UDP或任何其他協議。 這是因爲它將與非常簡單的硬件進行通信,這些硬件不具備處理所有不同協議層的資源。 我的網絡將由1臺主機通過以太網交換機與多個硬件通信組成。在這一點上,我基本上只想發送簡單的數據包到每個硬件,並建立一個我可以擴展的簡單服務器。我的系統運行Linux,服務器需要用C或C++編寫。 我一直在試圖找到關於如何使用原始套接

    0熱度

    1回答

    我正在使用Windows Server 2008 R2進行生產,所以使用原始套接字功能對我來說一定沒有問題。但是相反,我在接收入站RCVALL套接字時遇到問題。我在做什麼: m_recv_socket = socket(AF_INET6 , SOCK_RAW , IPPROTO_IPV6), setsockopt(m_recv_socket, SOL_SOCKET, SO_RCVTIMEO, re

    4熱度

    1回答

    時ETH_P_IP和ETH_P_ALL之間的差異,我有以下設置: client(eth0) --- (eth2) linux bridge (eth1) --- (eth1) server 當我打開原始套接字上使用 fd = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL)); 我有linux的橋樑綁定到eth2的套接字。客戶端向服務器發送數據包時,

    0熱度

    1回答

    如您所知,windows已停止支持raw_sockets,因此沒有真正的解決方案使用raw_sockets構建網絡嗅探器。所以我的問題是Winpcap和類似的庫如何在Windows上提供網絡嗅探?它取決於Windows的版本嗎?它是否使用其他一些技術來實現數據包嗅探? 是否有其他的解決方案,除了raw_sockets執行數據包嗅探? 一些軟件如wireshark使用winpcap來嗅探網絡數據包。

    1熱度

    1回答

    我一直在玩弄一個以太網協議(而不是IP)使用 插座(PF_PACKET,SOCK_RAW,ether_type) 我有一個小問題構成。我已經構建了一個包,其源和目標mac設置爲我的本地卡mac,並且還綁定了套接字。 我可以接收數據包從網絡的罰款。 我能夠發送數據包到我看到它們出現在wireshark中的程度。 然而,我的聽力應用程序不會看到這些數據包。但是它能夠看到來自網絡上其他來源的數據包。 我

    1熱度

    1回答

    我是新來的原始套接字,我正在玩ip頭。 我注意到,不過 ip->ip_hl = sizeof(struct ip) >> 2 //works fine; ip->ip_hl = hton(sizeof(struct ip) >> 2) //will not work; 什麼我不明白的是,爲什麼不將所有的網絡秩序,而不是在這種情況下,主機順序的編號? 判斷何時使用網絡訂單/主機訂單的一般規則是什麼?

    2熱度

    2回答

    我正在linux中構建一個只通過某個接口發送數據的應用程序。我可以使用原始套接字來做到這一點,也許使用套接字選項功能?

    6熱度

    1回答

    可能重複: Why does ping work without administrator privileges? 從MSDN文章TCP/IP原始套接字: ...重要的是要明白,有些類型的插座是很重要的SOCK_RAW可能會收到許多意外的數據報。例如,ping程序可以創建類型爲SOCK_RAW的套接字來發送ICMP迴應請求和接收響應.... 這段話表明,爲了執行ICMP的ping,必須在Wind

    -1熱度

    1回答

    您好我想通過python,ipv6在FREEBSD上嗅探數據包。 我很難嘗試使用googlings來獲取信息,但freebsd沒有任何例子。 下面的代碼是行不通的,因爲有人說BSD系統不支持 socket.PF_PACKET。 有沒有人有任何鏈接幫助我? s = socket.socket(socket.PF_PACKET, socket.SOCK_RAW, socket.htons(3)) s

    6熱度

    2回答

    我有一個程序向主機發送一組TCP SYN數據包(使用原始套接字),並使用libpcap(帶過濾器)來獲取響應。我試圖在一個異步I/O框架中實現它,但libpcap似乎缺少一些響應(即在TCP SYN和響應之間的時間小於100 microseconds時系列中的第一個數據包)。該PCAP手柄的設置是這樣的: pcap_t* pcap = pcap_open_live(NULL, -1, false,