
TCP, UDP, SSL, HTTP भेजने / प्राप्त करने के लिए नेटवर्क उपयोगिता

इसे अन्य भाषाओं में पढ़ें: English, Español, Deutsch, Français, italiano 简体中文.
Packet Sender एक ओपन सोर्स उपयोगिता है जो TCP, UDP, और SSL (एन्क्रिप्टेड TCP) पैकेट भेजने और प्राप्त करने के साथ-साथ HTTP/HTTPS अनुरोध और पैनल जनरेशन की अनुमति देती है। मुख्यलाइन शाखा आधिकारिक तौर पर विंडोज, मैक और डेस्कटॉप लिनक्स (Qt के साथ) का समर्थन करती है। अन्य स्थान Packet Sender को पुनः संकलित और पुनर्वितरित कर सकते हैं। Packet Sender मुफ्त है और GPL v2 या बाद के संस्करण के तहत लाइसेंस प्राप्त है। इसका उपयोग व्यावसायिक और व्यक्तिगत दोनों उद्देश्यों के लिए किया जा सकता है। यदि आपको यह ऐप उपयोगी लगता है, तो कृपया दान/प्रायोजन करने पर विचार करें ताकि विकास जारी रह सके।
Packet Sender निम्नलिखित प्रायोजकों का धन्यवाद करता है।
IWL एक कैलिफ़ोर्निया कंपनी है जो कंप्यूटर नेटवर्किंग उत्पाद बनाती है।
NagleCode एक सॉफ्टवेयर प्रकाशक और विकास स्टूडियो है।
Eletiope प्रदर्शनियों और संग्रहालयों के लिए, और कॉर्पोरेट शोरूम के लिए प्रकाश, ऑडियोविज़ुअल और इमर्सिव रूम स्थापित करता है।
John Huntington
लेखक, सलाहकार, शिक्षक, ध्वनि इंजीनियर, पुरस्कार विजेता फोटोग्राफर और तूफान का पीछा करने वाला।
क्या आप अपना नाम/लोगो यहां सूचीबद्ध करना चाहेंगे?
नोट: यदि विंडोज़ में समस्या हो रही है तो (अस्थायी रूप से) अपने फ़ायरवॉल को अक्षम करने का प्रयास करें।
Packet Sender के आधिकारिक संस्करण PacketSender.com पर डाउनलोड किए जा सकते हैं। कुछ स्थान Packet Sender को पुनर्वितरित करते हैं।

iOS के लिए Packet Sender पूरी तरह से देशी है, इसमें न्यूनतम अनुमतियाँ हैं, और कोई डेटा एकत्र नहीं करता है। यह एक ऐसा सॉफ्टवेयर है जो आपका सम्मान करता है। इस प्रयास का समर्थन करने के लिए धन्यवाद।
iOS संस्करण Apple App Store पर उपलब्ध है।
Packet Sender सभी डेस्कटॉप संस्करणों के लिए समान है। एकमात्र अंतर ऑपरेटिंग सिस्टम से मेल खाने वाली इसकी थीम है।

शीर्ष पर मौजूद फ़ील्ड को CTRL+1, CTRL+2, आदि से CTRL+8 (भेजें बटन) तक नेविगेट किया जा सकता है। मैक पर, शॉर्टकट कुंजी Command है।
हॉटकी और फ़ील्ड इस प्रकार हैं:
कुछ नोट्स:
डिफ़ॉल्ट रूप से, Packet Sender यादृच्छिक पोर्ट पर UDP, TCP और SSL सर्वर सक्षम के साथ लॉन्च होता है (नीचे दाईं ओर बटन के रूप में दिखाया गया है)। आप कॉमा-सेपरेटेड पोर्ट नंबरों का उपयोग करके किसी भी संख्या में पोर्ट से बाइंड कर सकते हैं (यदि OS अनुमति देता है)। उदाहरण के लिए, 0, 1000, 2000 "random" और पोर्ट 1000, 2000 से बाइंड होगा।

UDP बटन अब 3 पोर्ट बाउंड दिखाता है। उनमें से 1 यादृच्छिक है।

दूसरी सेटिंग सभी अनुरोधों का उत्तर के साथ जवाब देना है। आप इस अनुरोध को मैक्रो भी बना सकते हैं। उत्तर टाइप करने (या सहेजा गया पैकेट लोड करने) के लिए एक फ़ील्ड है।
डिफ़ॉल्ट रूप से, Packet Sender किसी भी IPv4 पते से बाइंड होता है। सेटिंग्स के इस क्षेत्र में, आप इसे इसके बजाय किसी भी IPv6 से, या किसी विशिष्ट IP पते से बाइंड कर सकते हैं।
किसी विशिष्ट पते से बाइंड करना तब बहुत उपयोगी होता है जब कई NIC हों और आप किसी विशिष्ट के माध्यम से संचार (जैसे ब्रॉडकास्ट पैकेट) को बाध्य करना चाहते हैं।

कुछ प्रोटोकॉल उम्मीद करते हैं कि सर्वर क्लाइंट के भेजने से पहले डेटा भेजे (जैसे कई टेलनेट सेवाएं)। इस वर्कफ़्लो को "Receive Before Send" से सक्षम किया जा सकता है।
यदि आपके पास एक धीमा उपकरण है (जैसे कमजोर प्रोसेसर वाला एम्बेडेड सर्वर), तो आप "500 ms delay after connect" सक्षम करना चाह सकते हैं। यह धीमे सर्वर को अपने हैंडलर को लॉन्च करने का समय देगा।
Packet Sender के अंतर्निहित सर्वर IPv4 या IPv6 का समर्थन करने के लिए कॉन्फ़िगर किए गए हैं लेकिन एक ही समय में दोनों का नहीं। क्लाइंट के लिए, Packet Sender GUI और CLI भेजने पर दोनों मोड के बीच सहजता से स्विच करेंगे (IPv6 के लिए स्कोप ID की आवश्यकता हो सकती है)। दोनों के बीच स्विच करने के लिए नीचे दाईं ओर IPv4 / IPv6 टॉगल पर क्लिक करें।
सेटिंग्स के अंदर, आप Packet Sender के सर्वर को कस्टम IP पते से बाइंड करने के लिए भी बाध्य कर सकते हैं। यह कई NIC या जटिल IP सेटअप वाले सिस्टम के लिए बहुत उपयोगी हो सकता है। Packet Sender एक त्रुटि देगा यदि उसे किसी ऐसे पते से बाइंड करने के लिए कहा जाए जो मौजूद नहीं है।

Packet Sender में एक अंतर्निहित सबनेट कैलकुलेटर है। यह Tools मेनू के अंतर्गत है।

वेक-ऑन-लैन (या WOL) एक प्रोटोकॉल है जो कंप्यूटर को नींद से जगाने के लिए कहता है। यह लक्ष्य के MAC पते पर आधारित विशेष डेटा वाले ब्रॉडकास्ट पैकेट द्वारा ट्रिगर होता है। अधिक जानकारी के लिए, विकिपीडिया पर एक नज़र डालें।
Packet Sender में एक अंतर्निहित WOL जनरेटर है। यह Tools मेनू के अंतर्गत है।

विकल्प भरें, और मुख्य GUI WOL प्रारूप के लिए सही डेटा से भर जाएगा।

WOL पैकेट उत्पन्न करने और भेजने में मदद के लिए CLI विकल्प भी हैं।```text packetsender --wol f8:23:66:30:e5:30 Sending broadcast Wake-On-LAN to target: F8:23:66:30:E5:30 on port 7 UDP (60360)://255.255.255.255:7 ff ff ff ff ff ff f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30 f8 23 66 30 e5 30
## SSL क्लाइंट और सर्वर
Packet Sender SSL पर एन्क्रिप्टेड कनेक्शन स्थापित करने का समर्थन करता है।
यह GUI और कमांड लाइन पर समर्थित है।
Packet Sender विंडोज में उपयोग के लिए OpenSSL को बंडल करता है। मैक और लिनक्स पर, Packet Sender मूल SSL लाइब्रेरीज़ का उपयोग करेगा।

SSL नोट्स:
* सर्टिफिकेट नेगोशिएशन कनेक्शन के दौरान तुरंत संभाला जाता है।
* डिफ़ॉल्ट रूप से, Packet Sender सभी SSL त्रुटियों को अनदेखा करता है (समाप्त सर्टिफिकेट, गलत होस्ट नाम, स्व-हस्ताक्षरित, आदि)।
* Packet Sender ट्रैफ़िक लॉग में सर्टिफिकेट नेगोशिएशन प्रगति को आउटपुट करता है।
* Packet Sender ट्रैफ़िक लॉग में उपयोग किए गए एन्क्रिप्शन एल्गोरिथम को आउटपुट करता है (जैसे AES 128)।
Packet Sender विंडोज के लिए सर्वर के रूप में उपयोग के लिए एक आंतरिक "Snake Oil" सर्टिफिकेट बंडल करता है। सर्टिफिकेट और कुंजी पैकेट और सेटिंग्स के समान स्थान पर हैं।
_नोट: सेटिंग्स में सर्टिफिकेट स्थानों को ओवरराइड करने से snake-oil सर्टिफिकेट भी ओवरराइड हो जाता है।_
यदि कोई SSL त्रुटि है, तो Packet Sender इसे ट्रैफ़िक लॉग में आउटपुट करेगा। यदि सेटिंग वैसे भी जारी रखने की है (डिफ़ॉल्ट), तो यह एन्क्रिप्शन पर बातचीत जारी रखेगा। अन्यथा, कनेक्शन विफलता के साथ समाप्त होता है।

## मल्टीकास्ट (प्रायोगिक)
Packet Sender का मल्टीकास्ट समर्थन IPv4 मल्टीकास्ट पते पर भेजने का प्रयास करके या मल्टीकास्ट उपमेनू से ट्रिगर होता है। यह सुविधा वर्तमान में प्रायोगिक है और इसमें ये ज्ञात समस्याएं हैं।
* Packet Sender मल्टीकास्ट में शामिल होने पर IPv6 समर्थन छोड़ देता है।
* और तब तक छोड़ा रहता है जब तक आप सेटिंग्स पर दोबारा नहीं जाते या IPv6 पर भेजने का प्रयास नहीं करते
* वाई-फाई पर, मल्टीकास्ट जॉइन को प्रभावी होने में कभी-कभी 20 सेकंड लगते हैं।
* Packet Sender के पास मल्टीकास्ट समूह में फिर से शामिल होने का कोई तर्क नहीं है यदि स्विच रीबूट होता है या कोई अन्य सामान्य त्रुटि होती है।
कोई IPv6 मल्टीकास्ट समर्थन नहीं है, हालांकि यह रोडमैप पर है। IPv6 मल्टीकास्ट समर्थन चाहने वाले प्रायोजक मुझसे संपर्क करने के लिए स्वागत करते हैं।
<a id="udptraffic"></a>
## UDP ट्रैफ़िक जनरेटर (प्रायोगिक)
जब सामान्य भेजने की प्रणाली पर्याप्त नहीं है, तो आप यह देखने के लिए कि क्या आपका उपकरण इसे संभाल सकता है, पैकेट के साथ एक लक्ष्य IP पर हथौड़ा चला सकते हैं। इसे GUI टूलबार पर _Tools -> Intense Traffic Generator_ पर पाया जा सकता है।
कृपया ध्यान दें कि यह सुविधा प्रायोगिक है और प्रदर्शित मेट्रिक्स का पूरी तरह से परीक्षण नहीं किया गया है। अधिक सटीक परीक्षण के लिए, आप इस उपकरण के CLI संस्करण को देखना चाह सकते हैं।

# Packet Sender विशेषताएं
<a id="cloud"></a>
## Packet Sender क्लाउड
पैकेट सेट को मुफ्त [Packet Sender Cloud](https://cloud.packetsender.com/) सेवा का उपयोग करके जल्दी से सहेजा/पुनर्प्राप्त किया/साझा किया जा सकता है। क्लाउड का उपयोग सहयोग, ट्यूटोरियल, अंतिम उपयोगकर्ताओं आदि के लिए आपके पैकेट को सार्वजनिक रूप से प्रदर्शित और वितरित करने (URL के माध्यम से) के लिए भी किया जा सकता है। Packet Sender सार्वजनिक URL के साथ सार्वजनिक पैकेट सेट आयात कर सकता है।
ऐसा करने के विभिन्न कारण हैं:
* अपने सभी पैकेट तैयार रखना ताकि आप एक नया Packet Sender स्थापित करते समय उन्हें जल्दी से पुनर्प्राप्त कर सकें
* विभिन्न परियोजनाओं पर काम करते समय पैकेट सेट के बीच जल्दी से स्वैप करना
* सहयोगी पैकेट सेट निर्माण के लिए एक लॉगिन साझा करना (इसकी अनुमति है)
* अपने पैकेट सेट का एक सार्वजनिक पृष्ठ होना ताकि अन्य लोग जल्दी से ढूंढ और आयात कर सकें

यदि आप एक नेटवर्क API प्रकाशित कर रहे हैं, तो सार्वजनिक क्लाउड पृष्ठ बनाए रखना आपके उपयोगकर्ताओं को पैकेट (IP, पोर्ट, प्रकार, आदि) का विस्तार से वर्णन करने की तुलना में काफी आसान है। साथ ही, उस पृष्ठ को अपडेट करना आसान है।
इसके बारे में अधिक जानकारी यहां पाई जा सकती है
https://cloud.packetsender.com/help
<a id="portable"></a>
## पोर्टेबल मोड
Packet Sender में एक "पोर्टेबल" मोड है। लॉन्च के समय, यह `portablemode.txt` की तलाश करेगा और उस रन-टाइम निर्देशिका में किसी भी लापता सेटिंग्स फ़ाइलों को आबाद करेगा। ये फ़ाइलें हैं `packets.ini`, `ps_settings.ini`, `ps.key`, और `ps.pem`।
आप `portablemode.txt` को हटाकर कुछ फ़ाइलों को पोर्टेबल और दूसरों को उनके मानक स्थान पर रख सकते हैं।
### DDLs जिन्हें केवल कंसोल-पोर्टेबल मोड में हटाया जा सकता है
यदि आपको GUI की आवश्यकता नहीं है, तो आप इन DDLs को हटा सकते हैं
- Qt6Svg.dll
- Qt6Widgets.dll
- Qt6Gui.dll
- opengl32sw.dll
- D3Dcompiler_47.dll
- iconengines निर्देशिका
- imageformats निर्देशिका
- styles निर्देशिका
ध्यान दें कि अपने नामों में `+` वर्ण वाले DLLs विंडोज कमांड-लाइन कॉपी के साथ समस्या पैदा कर सकते हैं यदि आप उन्हें `"` से घेर नहीं करते हैं।
### DDLs जिन्हें हटाया जा सकता है यदि आपको सुरक्षित कनेक्शन की आवश्यकता नहीं है
यदि आपको SSL की आवश्यकता नहीं है, तो आप इन DDLs को हटा सकते हैं
- libcrypto-1_1-x64.dll
- libssl-1_1-x64.dll
विंडोज उपयोगकर्ताओं के लिए रन-टाइम निर्देशिका .exe के समान स्थान है।
MAC उपयोगकर्ताओं के लिए, यह रन-टाइम निर्देशिका `PacketSender.app/Contents/MacOS` पर है।
यदि INI फ़ाइलें पाई जाती हैं, तो यह `%APPDATA%` या `Library/Application Support` के बजाय उनका उपयोग करेगा।
<a id="smartresponses"></a>
## स्मार्ट प्रतिक्रियाएं
Packet Sender अधिकतम 5 स्मार्ट प्रतिक्रियाओं का समर्थन करता है।
इस सुविधा को सक्षम करने के लिए, GUI टूलबार पर _File -> Settings_ पर जाएं। _Smart Responses_ टैब पर जाएं और **Send a Smart Response** चेकबॉक्स सक्षम करें।

* Packet Sender आपके द्वारा चुने गए एन्कोडिंग के भीतर पैकेट की तुलना करेगा।
* Packet Sender उत्तर भेजने से पहले एन्कोडिंग का अनुवाद करता है।
* उपलब्ध एन्कोडिंग हैं:
* मिश्रित ASCII -- गैर-मुद्रण योग्य वर्णों के साथ ASCII को एन्कोड करने का मानक Packet Sender तरीका
* HEX -- Packet Sender का सामान्य HEX एन्कोडिंग
## मैक्रोज़
Packet Sender प्रतिक्रिया भेजते समय इन मैक्रोज़ का समर्थन करता है:
* {{DATE}} -- वर्तमान दिनांक को "yyy-mm-dd" प्रारूप में भेजता है।
* {{TIME}} -- वर्तमान समय को "hh:mm:ss ap" प्रारूप में भेजता है।
* {{UNIXTIME}} -- वर्तमान epoch टाइम स्टैम्प भेजता है।
* {{COUNTER}} -- प्रत्येक पैकेट के लिए एक बढ़ता काउंटर भेजता है जो इसका उपयोग करता है। लॉन्च के समय 1 से शुरू होता है।
* {{RANDOM}} -- एक यादृच्छिक संख्या भेजता है जो या तो 0 से 32767 या 2147483647 तक होती है, 32-बिट या 64-बिट पर निर्भर करता है (विंडोज के लिए डिफ़ॉल्ट इंस्टॉलर 32-बिट है। मैक 64-बिट है)।
* {{UNIQUE}} -- एक यादृच्छिक स्ट्रिंग भेजता है। इसे उत्पन्न करने के लिए एक आंतरिक UUID का उपयोग करता है।
Packet Sender भेजने से पहले मैक्रो को वास्तविक मूल्यों से बदल देगा।
<a id="persistent"></a>
## स्थायी TCP और SSL
Packet Sender एक अलग GUI विंडो के माध्यम से स्थायी TCP और SSL कनेक्शन का समर्थन करता है। यह मुख्य विंडो पर एक चेकबॉक्स या सेटिंग्स विंडो के माध्यम से सक्षम किया जाता है।

### स्थायी TCP और SSL पर नोट्स:
* कोई भी संख्या में स्थायी कनेक्शन बनाए जा सकते हैं।
* पहले से सहेजे गए पैकेट को ड्रॉप-डाउन में लोड किया जा सकता है।
* एक "Raw" दृश्य और "ASCII" दृश्य है। ASCII दृश्य उस डेटा को समस्या निवारण करने में उपयोगी है जो कच्चे दृश्य द्वारा मुद्रित नहीं किया जाता है।
* ट्रैफ़िक मुख्य विंडो ट्रैफ़िक लॉग में भी सहेजा जाता है।
* स्थायी कनेक्शन में एक फ़ाइल अपलोड की जा सकती है। यदि आप इसका उपयोग करते हैं तो आप लॉगिंग बंद करना चाह सकते हैं।
* निचले बाएँ में टाइमर तब शुरू होता है जब एक वैध डेटा पैकेट भेजा/प्राप्त किया जाता है। जब कनेक्शन बंद होता है तो यह बंद हो जाता है।
* जब आप रिटर्न कुंजी दबाकर त्वरित-भेजते हैं तो आप वैकल्पिक रूप से एक कैरिज रिटर्न जोड़ सकते हैं। यह TCP / SSL कनेक्शन पर कमांड-प्रॉम्प्ट मेनू के लिए उपयोगी है। Packet Sender \r चेकबॉक्स की पिछली स्थिति को याद रखता है।
* सर्वर के लिए आने वाले स्थायी कनेक्शन अलग GUI विंडो लॉन्च करेंगे।
* पुनर्भेज के दौरान, स्थायी कनेक्शन पैकेट नई GUI विंडो पर ले जाया जाता है। "Resending(1)" पर क्लिक करना इसे रद्द कर देगा।
स्थायी कनेक्शन कमांड लाइन के माध्यम से समर्थित नहीं हैं।
<a id="http"></a>
# HTTP/HTTPS POST & GET
Packet Sender HTTP और HTTPS के माध्यम से POST/GET अनुरोध भेजने का समर्थन करता है।
प्रोटोकॉल ड्रॉपडाउन में निम्नलिखित विकल्प शामिल हैं: HTTP GET, HTTP POST, HTTPS GET, HTTPS POST। HTTP(S) चुनने पर, इनपुट फ़ील्ड अपडेट हो जाएंगे: Name, Request, Address, Data (जब POST चुना जाता है), Generate Data बटन (जब POST चुना जाता है), Load File (जब POST चुना जाता है)।
## HTTP/HTTPS GET/POST अनुरोध भेजना

* प्रोटोकॉल ड्रॉपडाउन से HTTP(S) GET या POST चुनें
* *Address* फ़ील्ड में डोमेन या IP इनपुट करें
* *Request* फ़ील्ड में URL पथ जोड़ें, यदि आवश्यक हो
* *Port* फ़ील्ड में, HTTP के लिए डिफ़ॉल्ट 80 और HTTPS के लिए 443 है
* सर्वर डेटा को अधिक स्पष्ट रूप से देखने के लिए *Persistent TCP* जांचें (HTTP हैडर स्वचालित रूप से हटा दिए जाते हैं)।
**आप Request फ़ील्ड में एक पूर्ण URL भी पेस्ट कर सकते हैं और Packet Sender पार्स करेगा और अन्य फ़ील्ड को स्वतः-पॉप्युलेट करेगा।**
### POST अनुरोधों के लिए:
* आप *Data* फ़ील्ड में डेटा को मैन्युअल रूप से जोड़ सकते हैं।
* प्रारूप होगा: key=value
* एकाधिक पैरामीटर के लिए: key=value&key=value&key=value
* या आप *Generate Data* बटन पर क्लिक कर सकते हैं
<img src="https://assets.kitploit.com/production/public/readmes/4523/10d31cc53bcf0ba4d4a60d38c83a08231617142f8eec6b3cdb68f83964c3da06.png" width="400" height="284">
* डेटा जोड़ने के लिए, Key और Value पैरामीटर इनपुट करें। **+** बटन पर क्लिक करें।
* + बटन के साथ एकाधिक पैरामीटर जोड़ सकते हैं।
* पैरामीटर के आगे X बटन पर क्लिक करके पैरामीटर हटाएं
* एक बार पैरामीटर जोड़े जाने के बाद, Ok पर क्लिक करें और Data फ़ील्ड में डेटा उत्पन्न होगा।
### प्रमाणीकरण क्रेडेंशियल जोड़ने के लिए:
<img src="https://assets.kitploit.com/production/public/readmes/4523/0592ee55242fa40c5eeb6dd0bd87956167c1461a7b224259a81ac065c055b9a0.png" width="800" height="339">
* File -> Settings -> HTTP पर जाएं
* *Generate Auth Header* जांचें
* *Host*, *UN/Client ID*, और *PW/Access* इनपुट करें
* प्रमाणीकरण हेडर उत्पन्न करने के लिए *HTTP Auth Header* पर क्लिक करें
<a id="panelgen"></a>
# पैनल जनरेटर
Packet Sender नियंत्रण पैनल उत्पन्न करने का समर्थन करता है। पैनल में बटन होते हैं जिनमें उन्हें असाइन की गई स्क्रिप्ट (पैकेट) होती हैं। बटन पर क्लिक करने से उस बटन पर संदर्भित पैकेट निष्पादित होंगे।
<img src="https://assets.kitploit.com/production/public/readmes/4523/933ef79915bb7e6ced4a6fff3b2bb9b98ef19619b5096476cb8d5496c487e3dd.png" width="400" height="358">
## पैनल लोड करना
पैनल दो तरीकों में से एक बनाए जा सकते हैं:
* टूलबार पर **Panels** पर क्लिक करना और Load Starter Panel या Empty Panel Project चुनना
* Load Starter Panel स्टार्टर के रूप में निर्दिष्ट पैनल लोड करेगा। यदि कोई पैनल स्टार्टर के रूप में सेट नहीं है, तो एक खाली पैनल प्रोजेक्ट खुलेगा।
* 2 या अधिक सहेजे गए पैकेट को हाइलाइट करना और **Generate Panel** बटन पर क्लिक करना (Generate Panel बटन तभी दिखाई देता है जब एकाधिक पैकेट चुने जाते हैं)
Packet Sender कमांड लाइन विकल्प `--starterpanel` का उपयोग करके स्टार्टर पैनल के साथ केवल-पैनल मोड में लॉन्च करने का समर्थन करता है

## पैनल स्क्रिप्टिंग
अपने पैनल पर बटनों की स्क्रिप्टिंग शुरू करने के लिए, आपको एक पैनल खोलना होगा और एडिटिंग स्क्रीन पर जाना होगा। एक बार पैनल प्रोजेक्ट खुलने के बाद, निचले दाएं कोने में बटन देखें। यदि यह बटन "Viewing" कहता है, तो आप Viewing स्क्रीन पर हैं। पैनल को Editing स्क्रीन पर ले जाने के लिए बटन पर क्लिक करें।
एक बार Editing स्क्रीन पर, बटन और स्क्रिप्ट को पैनल में जोड़ा जा सकता है।
### बटन स्क्रिप्टिंग
बटन स्क्रिप्ट में भेजे जाने वाले पैकेट का नाम होगा।
<img src="https://assets.kitploit.com/production/public/readmes/4523/a34e6ec6f371b15c13f41bf577df02c57b2fb3e695d88f572d90b96377d0c92e.png" width="400" height="360">
एकाधिक पैकेट को एक बटन पर सेट किया जा सकता है प्रत्येक नाम को एक नई पंक्ति में जोड़कर।
<img src="https://assets.kitploit.com/production/public/readmes/4523/8bdccde0bc587dbd0d2a64f5126f1de47cdbd5a7ea0fb518122fb17bd876163a.png" width="400" height="358">
पैनल जनरेटर एकाधिक पैकेट के बीच "delay:_# of seconds_" जोड़कर देरी जोड़ने का समर्थन करता है।
<img src="https://assets.kitploit.com/production/public/readmes/4523/c9399a2ba90d0a747c851d15d8a7674eac530c5cb6f65b4182bb532872dbfbbb.png" width="400" height="359">
पैनल जनरेटर "panel:_panel id #_" जोड़कर एक नया पैनल लोड करने के लिए स्क्रिप्ट जोड़ने का समर्थन करता है। एक बार बटन पर सभी पिछली स्क्रिप्ट निष्पादित हो जाने के बाद, पैनल अगले पैनल में संक्रमण करेगा।
<img src="https://assets.kitploit.com/production/public/readmes/4523/0b8c538ddacba7c2e1ebe089491b555d63875f425aa25bd3ebd693467c0c5aa2.png" width="400" height="358">
### फ़ाइलें/URL जोड़ना
पैनल जनरेटर स्थानीय रूप से संग्रहीत फ़ाइलों या URLs से लिंक करने वाले बटन जोड़ने का समर्थन करता है।
फ़ाइल/URL बटन Editing स्क्रीन पर रहते हुए निचले दाएं कोने में *+* पर क्लिक करके जोड़े जा सकते हैं।
* फ़ाइलों के लिए: PC पर फ़ाइल पर जाएं, फ़ाइल पर राइट क्लिक करें और Copy चुनें। इसे Packet Sender में _URL or File_ टेक्स्टबॉक्स में पेस्ट करें
* URLs के लिए: URL को Packet Sender में _URL or File_ टेक्स्टबॉक्स में कॉपी करें
* URLs को http:// या https:// से शुरू होना चाहिए

एक बार फ़ाइल या URL कॉपी हो जाने के बाद, आपको बटन के लिए एक नाम इनपुट करने का संकेत दिया जाएगा। बटन पैनल के नीचे आबाद होंगे।
Editing स्क्रीन पर रहते हुए, इन बटनों पर क्लिक करने से आप फ़ाइल/URL लिंक और बटन के नाम को संपादित कर सकेंगे। आप पॉपअप पर **X** पर क्लिक करके बटन को हटा भी सकते हैं।

Viewing स्क्रीन पर होने पर, इन बटनों पर क्लिक करने से डिफ़ॉल्ट ब्राउज़र में URL लॉन्च होगा या फ़ाइल खुलेगी (फ़ाइल प्रकार के लिए डिफ़ॉल्ट प्रोग्राम के साथ)।

### पैनल संपादन/सहेजना
पैनल की Editing स्क्रीन पर रहते हुए, File, Export, Settings, Help मेनू वाला एक टूलबार होगा। आप इस टूलबार से पैनल प्रोजेक्ट को सहेज, निर्यात, आयात, लोड और वर्तमान पैनल प्रोजेक्ट को संपादित कर सकते हैं।
Settings से, आप निम्न कर सकते हैं:
* Set Panel Name - वर्तमान पैनल प्रोजेक्ट का नाम बदलने के लिए इसे चुनें
* Set Panel ID - वर्तमान पैनल प्रोजेक्ट से संबद्ध ID बदलने के लिए इसे चुनें
_नोट: उपयोग में आने वाली ID सेट करने से वह पैनल बदल जाएगा_
* Starter Panel - वर्तमान पैनल प्रोजेक्ट को स्टार्टर पैनल के रूप में सेट करने के लिए इसे चुनें।
* Delete Panel - यह वर्तमान पैनल प्रोजेक्ट का एक मेनू लाएगा। इसे हटाने के लिए एक पैनल प्रोजेक्ट चुनें। _नोट: बटन और स्क्रिप्ट तब तक Editing स्क्रीन पर बने रहेंगे जब तक पैनल बंद नहीं हो जाता_
# DTLS
फिलहाल, DTLS केवल विंडोज के साथ GUI में समर्थित है। अन्य ऑपरेटिंग सिस्टम Qt6 का उपयोग करके स्रोत से संकलित करके DTLS को सक्षम कर सकते हैं।
## अवलोकन
इस रिपॉजिटरी में DTLS (डेटाग्राम ट्रांसपोर्ट लेयर सिक्योरिटी) प्रोटोकॉल सुविधा शामिल है। इस सुविधा ने सर्वर सत्यापन और सत्र दृढ़ता विकल्पों सहित DTLS कनेक्शन को कॉन्फ़िगर और प्रबंधित करने के लिए एक ग्राफिकल इंटरफ़ेस जोड़ा है।
## विशेषताएं
### मुख्य विंडो

- **सिफर सूट**: DTLS संचार के लिए वांछित सिफर सूट का चयन करने के लिए ड्रॉपडाउन।
- **सर्वर कॉमन नेम**: क्लाइंट-साइड सत्यापन के लिए सर्वर का कॉमन नेम इनपुट करने का फ़ील्ड।
- **स्थायी सत्र**: स्थायी चेकबॉक्स सक्षम करके पहले हैंडशेक के बाद सत्र कुंजी को सहेजने का विकल्प।
- **वैकल्पिक सर्वर सत्यापन**: हैंडशेक के दौरान दो-तरफा सत्यापन सक्षम करने का एक विकल्प।
- **DTLS सर्वर पोर्ट**: कनेक्शन के लिए DTLS सर्वर पोर्ट को परिभाषित करने का बटन।
#### अतिरिक्त चित्र:

- सिफर सूट चयन ड्रॉपडाउन का एक विस्तृत दृश्य।

- DTLS के दौरान स्थायी कनेक्शन विंडो।

- DTLS सर्वर को सक्षम या अक्षम करने के लिए क्लिक बटन।
### सेटिंग्स विंडो
#### नेटवर्क टैब

- **Send Simple Acknowledge**: एक सरल स्वीकृति भेजने को सक्षम करने के लिए चेकबॉक्स।
- **Enable DTLS Server**: DTLS सर्वर को सक्षम करने और एक पोर्ट चुनने का विकल्प।
- **Certificates and Keys**: प्रमाणपत्र और कुंजियां SSL कॉन्फ़िगरेशन के समान लोड की जा सकती हैं।
#### स्मार्ट प्रतिक्रिया टैब

- **स्मार्ट प्रतिक्रियाएं**: स्मार्ट प्रतिक्रिया सुविधा DTLS प्रोटोकॉल पर काम करती है।
## Wireshark एकीकरण
Wireshark द्वारा स्निफिंग:
### नियमित कनेक्शन

- Wireshark द्वारा कैप्चर किए गए एक नियमित DTLS कनेक्शन का उदाहरण।
### स्थायी कनेक्शन

- Wireshark द्वारा स्निफ किए गए एक स्थायी DTLS कनेक्शन का उदाहरण।
<a id="cli"></a>
# कमांड लाइन
Packet Sender आपके कंप्यूटर पर कमांड लाइन से उपयोग किया जा सकता है।
विंडोज के लिए, कमांड लाइन इंटरफ़ेस का उपयोग करने के लिए एक्सटेंशन .com (`packetsender.com`) का उपयोग करें। वैकल्पिक रूप से, आप बिना एक्सटेंशन के `packetsender` का भी उपयोग कर सकते हैं। .exe एक्सटेंशन का उपयोग करने से GUI लॉन्च होगा।

लिनक्स के लिए, Packet Sender में कमांड लाइन सिस्टम अन्य लिनक्स उपयोगिताओं के समान पैटर्न का पालन करता है। इसका एक लंबा नाम (जैसे --version) और एक छोटा नाम (जैसे -v) है। इन विकल्पों को किसी भी क्रम में व्यवस्थित किया जा सकता है और Packet Sender उन्हें सही ढंग से पार्स करेगा। अंतिम 3 विकल्प स्थितीय हैं और अंतिम में दिखाई देने चाहिए। वे IP, पोर्ट और डेटा हैं। ये अंतिम विकल्प वैकल्पिक हैं यदि कोई संग्रहीत पैकेट का उपयोग कर रहे हैं।```text
packetsender --help
Usage: C:\Program Files\PacketSender\packetsender.com [options] address port data
Packet Sender is a Network UDP/TCP/SSL/HTTP Test Utility by NagleCode
See https://PacketSender.com/ for more information.
Options:
-h, --help Displays help on commandline options.
--help-all Displays help including Qt specific options.
-v, --version Displays version information.
-q, --quiet Quiet mode. Only output received data.
-x, --hex Parse data-to-send as hex (default for
TCP/UDP/SSL).
-a, --ascii Parse data-to-send as mixed-ascii (default for http
and GUI).
-A, --ASCII Parse data-to-send as pure ascii (no \xx
translation).
-l, --listen Listen instead of send. Use bind options to specify
port/IP. Otherwise, dynamic/All.
-r, --response <ascii> Server mode response data in mixed-ascii. Macro
supported.
-w, --wait <ms> Wait up to <milliseconds> for a response after
sending. Zero means do not wait (Default).
-f, --file <path> Send contents of specified path. Max 10 MiB for
UDP, 100 MiB for TCP/SSL.
-b, --bind <port> Bind port. Default is 0 (dynamic).
-6, --ipv6 Force IPv6. Same as -B "::". Default is IP:Any.
-4, --ipv4 Force IPv4. Same as -B "0.0.0.0". Default is
IP:Any.
-B, --bindip <IP> Bind custom IP. Default is IP:Any.
-t, --tcp Send TCP (default).
-s, --ssl Send SSL and ignore errors.
-S, --SSL Send SSL and stop for errors.
-u, --udp Send UDP.
--http <http> Send HTTP. Allowed values are GET (default) and
POST
-n, --name <name> Send previously saved packet named <name>. Other
options overrides saved packet parameters.
--wol <mac> Send Wake-On-LAN / Magic Packet to <mac> and
(optional) <port>.
--bps <bps> Intense traffic. Calculate rate based on value of
bits per second.
--num <number> Intense traffic. Number of packets to send. Default
unlimited.
--rate <Hertz> Intense traffic. Rate. Ignored in bps option.
--usdelay <microseconds> Intense traffic. Resend delay. Used if rate is 0.
Ignored in bps option.
--max Intense traffic. Run as fast as possible.
Arguments:
address Destination address/URL. Optional for saved packet.
port Destination port/POST data. Optional for saved
packet.
data Data to send. Optional for saved packet.
CLI विंडोज, लिनक्स और मैक के बीच समान प्रारूप का पालन करता है।
प्रारूप है: `packetsender [options] address port data````text packetsender -taw 500 mirrors.xmission.com 21 "USER anonymous\r\nPASS [email protected]\r\n" TCP (65505)://mirrors.xmission.com:21 55 53 45 52 20 61 6e 6f 6e 79 6d 6f 75 73 0d 0a 50 41 53 53 20 63 68 72 6f 6d 65 40 65 78 61 6d 70 6c 65 2e 63 6f 6d 0d 0a Response Time:5:51:37.042 pm Response HEX:32 32 30 2D 57 65 6C 63 6F 6D 65 20... Response ASCII:220-Welcome to XMission Internet...
## पैकेट सुनने के लिए CLI उदाहरण (सर्वर मोड)
सर्वर कॉन्फ़िगर करने के लिए मौजूदा बाइंड विकल्पों का उपयोग करें।
- -b पोर्ट के लिए
- -B आईपी के लिए
- -t/-u/-s TCP, UDP, या SSL के लिए
- -r प्रतिक्रिया भेजने के लिए (मैक्रो समर्थित ASCII)
TCP का उपयोग करके डायनामिक पोर्ट से बाइंडिंग```text
packetsender -l
TCP Server started on 0.0.0.0:52567
Use ctrl+c to exit server.
From: 127.0.0.1, Port:52568
Response Time:2024-06-04 19:01:53.198
Response HEX:48 65 6C 6C 6F
Response ASCII:Hello
From: 127.0.0.1, Port:52569
Response Time:2024-06-04 19:02:24.063
Response HEX:57 6F 72 6C 64
Response ASCII:World
UDP का उपयोग करके पोर्ट 8080 से बाइंड हो रहा है```text packetsender -l -u -b 8080 UDP Server started on 0.0.0.0:8080 Use ctrl+c to exit server.
From: ::ffff:127.0.0.1, Port:49500 Response Time:2024-06-04 19:04:28.890 Response HEX:48 65 6C 6C 6F 20 55 44 50 20 50 61 63 6B 65 74 Response ASCII:Hello UDP Packet
UDP का उपयोग करके पोर्ट 8080 पर बाइंडिंग, वर्तमान समय प्रतिक्रिया के साथ```text
packetsender -l -u -b 8080 -r "{{TIME}}"
Loading response packet.
UDP Server started on 0.0.0.0:8080
Use ctrl+c to exit.
From: ::ffff:127.0.0.1, Port:59594
Response Time:2024-06-05 20:48:18.180
Response HEX:68 65 6C 6C 6F 20 70 61 63 6B 65 74 20 73 65 6E 64 65 72
Response ASCII:hello packet sender
From: You (Response), Port:59594
Response Time:2024-06-05 20:48:18.182
Response HEX:30 38 3a 34 38 3a 31 38 20 70 6d
Response ASCII:08:48:18 pm
बाइंड हो रहा है IP 192.168.86.26, port 54321 SSL का उपयोग करते हुए```text packetsender -l -s -B 192.168.86.26 -b 54321 Binding to custom IP 192.168.86.26 Listening for SSL packets in server mode. SSL Server started on 192.168.86.26:54321 Use ctrl+c to exit server.
From: 192.168.86.26, Port:52588 Response Time:2024-06-04 19:11:30.726 Error/Info:Encrypted with AESGCM(256)
From: 192.168.86.26, Port:52588 Response Time:2024-06-04 19:11:30.726 Error/Info:Authenticated with RSA
From: 192.168.86.26, Port:52588 Response Time:2024-06-04 19:11:30.726 Error/Info:Peer cert issued by
From: 192.168.86.26, Port:52588 Response Time:2024-06-04 19:11:30.726 Error/Info:Our Cert issued by SnakeOil
From: 192.168.86.26, Port:52588 Response Time:2024-06-04 19:11:30.747 Response HEX:43 6F 6F 6C 20 53 53 4C Response ASCII:Cool SSL
## पोर्ट और कस्टम IP, IPv4, या IPv6 से बाइंडिंग के उदाहरण
Packet Sender कमांड लाइन -B विकल्प का उपयोग करके IPv4/6 मोड या एकाधिक NIC को बाध्य करने के लिए कस्टम पोर्ट से बाइंड हो सकता है।```text
packetsender -taw 3000 fe80::c07b:d517:e339:5a08 5005 "Hello\r"
packetsender -taw 3000 192.168.0.201 5005 "Hello\r"
packetsender -B 192.168.0.200 -taw 3000 192.168.0.201 5005 "Hello\r"
packetsender -B fe80::a437:399a:3091:266a%ethernet_32769 -taw 3000 fe80::c07b:d517:e339:5a08 5005 "Hello\r"
packetsender -B fe80::a437:399a:3091:266a -taw 3000 fe80::c07b:d517:e339:5a08 5005 "Hello\r"
कमांड लाइन में SSL त्रुटियों पर अनदेखा या छोड़ने का विकल्प है। डिफ़ॉल्ट अनदेखा करना है।
Response Time:3:24:55.695 pm Response HEX:48 54 54 50 2f 31 2e 31 20 34 32 31 20 0d 0a 53 65 72 76 65 72 3a 20 6e 67 69 6e 78 2f 31 2e 31 30 2e 30 20 28 55 62 75 6e 74 75 29 0d Response ASCII:HTTP/1.1 421 \r\nServer: nginx/1.10.0 (Ubuntu)\r
## HTTP का उपयोग करते हुए CLI उदाहरण
ध्यान दें कि यह बिल्ट-इन डिफ़ॉल्ट पैकेट का उपयोग करता है।```text
packetsender --name "HTTPS POST Params"
packetsender --http GET "https://httpbin.org/get"
packetsender --http POST "https://httpbin.org/post" "{}"
CLI तीव्र ट्रैफ़िक जनरेटर कमांड GUI संस्करण की तरह ही काम करता है, लेकिन यह अधिक सटीक है, इसमें अधिक नियंत्रण विकल्प हैं (और अधिक तीव्रता!)।
इसका उपयोग करने के तरीके के उदाहरण नीचे देखें। ध्यान दें कि ये गणनाएँ "सर्वोत्तम प्रयास" हैं। यह ठीक काम करता है, लेकिन प्रोसेसर स्पाइक्स या विभिन्न नेटवर्क हिचकियाँ इसे बिगाड़ सकती हैं। थ्रेडिंग रीयल-टाइम नहीं है, और यह क्षतिपूर्ति करने के अपने प्रयासों में अति-स्मार्ट भी नहीं है।
नोट: विंडोज़ के लिए, ".com" बिल्ड का उपयोग करें, इसलिए प्रत्येक उदाहरण packetsender.com होगा```text packetsender --rate 20 --name "My Awesome Packet" packetsender --bps 2000 --name "My Awesome Packet" packetsender --rate 0 --name "My Awesome Packet" packetsender --usdelay 2000000 --name "My Awesome Packet"
<a id="building"></a>
# पैकेट सेंडर बनाना
एकमात्र निर्भरता Qt SDK है
## विंडोज/मैक के लिए पैकेट सेंडर बनाना
1. https://www.qt.io/download-open-source/ से Qt इंस्टॉलर डाउनलोड करें
1. यदि आपके पास कंपाइलर नहीं है तो इसे MingGW इंस्टॉल करने दें।
1. प्रोजेक्ट PacketSender.pro खोलें
1. बनाएँ!
विंडोज और मैक संस्करण Qt 5.12 का उपयोग करके बनाए गए थे। Packet Sender Qt 6 का समर्थन करता है, हालांकि यह cmake का समर्थन नहीं करता।
## लिनक्स के लिए पैकेट सेंडर बनाना
यहाँ Ubuntu 16.04 के लिए कमांड का क्रम दिया गया है। कृपया अपने लिनक्स प्लेटफॉर्म के अनुसार अनुकूलित करें। Packet Sender को स्टॉक Qt SDK के अलावा किसी अतिरिक्त लाइब्रेरी की आवश्यकता नहीं है। मुझे बताया गया है कि स्टॉक Fedora के साथ बिल्ड संबंधी समस्याएँ हैं। यदि कोई Fedora विशेषज्ञ जानकारी दे सके, तो कृपया मुझे बताएं, और मैं आपके निर्देश जोड़ दूंगा।
यदि आप साहसी महसूस कर रहे हैं, तो master branch से बनाने में संकोच न करें। इसमें नवीनतम स्थिर बिल्ड है। development branch से शायद बचना चाहिए।```bash
sudo apt-get update
sudo apt-get install qt5-default build-essential
wget https://github.com/dannagle/PacketSender/archive/(Version).tar.gz
tar -xzvf (Version).tar.gz
cd PacketSender-(Version)/src
qmake PacketSender.pro
make
चलाने के लिए उपयोग करें:```text ./PacketSender
यदि यह चलता नहीं है, तो आपको इसे निष्पादन योग्य सेट करने की आवश्यकता हो सकती है।```text
chmod a+x PacketSender
कोई सुविधा गायब है? आप इसे Packet Sender में जोड़ने के लिए मुझे काम पर रख सकते हैं।
लाइसेंस GPL v2 या बाद का है। मुझसे संपर्क करें यदि आपको किसी भिन्न लाइसेंस की आवश्यकता है। Packet Sender के कुछ वितरण OpenSSL का उपयोग कर सकते हैं। सबसे वर्तमान VPAT इस रेपो में पाया जा सकता है।
Packet Sender को Dan Nagle द्वारा लिखा गया था और इसे © NagleCode, LLC द्वारा प्रकाशित किया गया है - @NagleCode - PacketSender.com