मैं सी # का उपयोग कर आईपी पैकेट भेजने की कोशिश कर रहा हूं।मैं यह आईपी पैकेट क्यों नहीं भेज सकता?
destAddress = IPAddress.Parse("192.168.0.198"),
destPort = 80;
// Create a raw socket to send this packet
rawSocket = new Socket(AddressFamily.InterNetwork, SocketType.Raw, ProtocolType.IP);
// Bind the socket to the interface specified
IPEndPoint iep = new IPEndPoint(IPAddress.Parse("192.168.0.140"),0);
rawSocket.Bind(iep);
// Set the HeaderIncluded option since we include the IP header
rawSocket.SetSocketOption(socketLevel, SocketOptionName.HeaderIncluded, 1);
// Send the packet!
int rc = rawSocket.SendTo(builtPacket, new IPEndPoint(destAddress, destPort));
Console.WriteLine("sent {0} bytes to {1}", rc, destAddress.ToString());
बिल्टपैकेट की सामग्री नीचे दिखाया गया है। यह एक आईपी पैकेट है जिसमें एक टीसीपी एसवाईएन पैकेट होता है (यही वह है जो मुझे लगता है कि मैंने वैसे भी बनाया है)।
45 00 00 28 00 00 00 00 02 06 36 6E C0 ए 8 00 8C
C0 ए 8 00 सी 6 14 1E 00 50 00 00 00 00 00 00 00 00
05 02 एफएफ एफएफ E6 4F 00 00
उत्पादन होता है:
sent 40 bytes to 192.168.0.198
समस्या मैं Wireshark का पता लगाने में कुछ भी नहीं दिख रहा है। ऐसा लगता है कि वायरसहार्क को देखने के लिए डेटा काफी ढेर नहीं हो रहा है? यदि मैं 1 9 2.168.0.1 9 8 से कनेक्ट करने के लिए ब्राउज़र का उपयोग करता हूं, तो वायरशर्क सभी पैकेट दिखाता है, लेकिन उपरोक्त कोड और डेटा का उपयोग करके पैकेट भेजने का प्रयास करते समय कुछ भी नहीं दिखाता है।
मेरे config:
मैं तो यह एक अनुमतियाँ समस्या नहीं है व्यवस्थापक के रूप में चल रहा हूँ।
Windows7 (नहीं एक वी एम में चल रहे)
वायरलेस कनेक्शन केवल
क्या मैं गलत कर रहा हूँ (आईपी config 192.168.0.140 के रूप में अपनी आईपी रिपोर्ट)?
मुझे यकीन है कि ओकम का रेजर यहां लागू होता है, लेकिन मैं इसे घंटों तक देख रहा हूं और यह पता नहीं लगा सकता कि क्या गलत है।
क्या आपके पास वायरसहार्क में कोई फ़िल्टर सेट है? – Default
क्या रिसीवर पैकेज प्राप्त करता है? –
मैंने "होस्ट 192.168.0.1 9 8" के फ़िल्टर के साथ प्रयास किया है और कोई फ़िल्टर नहीं है, लेकिन मेरे ऐप से कुछ भी नहीं मिला है। – TonyM