<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[versuch Portscanner]]></title><description><![CDATA[<p>Hallo,<br />
ich wollte wissen warum mein Portscanner so langsamm ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /><br />
ich weiß das der code nicht sehr gut ist aber bitte helft mir mal...</p>
<p>hier der hauptteil</p>
<pre><code class="language-cpp">SOCKADDR_IN addr;

  char ip[100];

  system(&quot;color 0c&quot;);
  cout &lt;&lt; &quot;Port Scanner!\nEnter the IP:&quot;;
  cin &gt;&gt;ip;

  cout&lt;&lt;&quot;\n\n\nStart!!!\n\n&quot;;

  Sleep(500);

while(1)
{
  // Winsock starten
  rca=startWinsock();

  // Socket erstellen
  sa=socket(AF_INET,SOCK_STREAM,0);

  // Verbinden
  memset(&amp;addr,0,sizeof(SOCKADDR_IN)); // zuerst alles auf 0 setzten
  addr.sin_family=AF_INET;
  addr.sin_port=htons(port); // wir verwenden mal port 12345
  if (getIPAdress (ip, &amp;addr) == SOCKET_ERROR) { 
	  cout&lt;&lt;&quot;\nIP ist nicht online!\n&quot;;
  }

    rca=connect(sa,(SOCKADDR*)&amp;addr,sizeof(SOCKADDR));
    if(rca==SOCKET_ERROR)
    cout&lt;&lt;&quot;Port: &quot;&lt;&lt;port&lt;&lt;&quot; is not open!\n&quot;;

	else 
	{
	cout&lt;&lt;&quot;Port: &quot;&lt;&lt;port&lt;&lt;&quot; is OPEN!\n&quot;;
	ofstream pp(&quot;Open Port list.txt&quot;,ios_base::app);
	pp&lt;&lt;&quot;Port: &quot;&lt;&lt;port&lt;&lt;&quot; is OPEN!\n&quot;;
	pp.close();
	}

  closesocket(sa);
  WSACleanup();

  port++;
  if(port==10000)
	  break;
  }
</code></pre>
<p>ihr könnt ihn verändern wie ihr wollt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/300157/versuch-portscanner</link><generator>RSS for Node</generator><lastBuildDate>Wed, 12 Aug 2026 22:51:32 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/300157.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 26 Feb 2012 19:20:57 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to versuch Portscanner on Sun, 26 Feb 2012 19:20:57 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich wollte wissen warum mein Portscanner so langsamm ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /><br />
ich weiß das der code nicht sehr gut ist aber bitte helft mir mal...</p>
<p>hier der hauptteil</p>
<pre><code class="language-cpp">SOCKADDR_IN addr;

  char ip[100];

  system(&quot;color 0c&quot;);
  cout &lt;&lt; &quot;Port Scanner!\nEnter the IP:&quot;;
  cin &gt;&gt;ip;

  cout&lt;&lt;&quot;\n\n\nStart!!!\n\n&quot;;

  Sleep(500);

while(1)
{
  // Winsock starten
  rca=startWinsock();

  // Socket erstellen
  sa=socket(AF_INET,SOCK_STREAM,0);

  // Verbinden
  memset(&amp;addr,0,sizeof(SOCKADDR_IN)); // zuerst alles auf 0 setzten
  addr.sin_family=AF_INET;
  addr.sin_port=htons(port); // wir verwenden mal port 12345
  if (getIPAdress (ip, &amp;addr) == SOCKET_ERROR) { 
	  cout&lt;&lt;&quot;\nIP ist nicht online!\n&quot;;
  }

    rca=connect(sa,(SOCKADDR*)&amp;addr,sizeof(SOCKADDR));
    if(rca==SOCKET_ERROR)
    cout&lt;&lt;&quot;Port: &quot;&lt;&lt;port&lt;&lt;&quot; is not open!\n&quot;;

	else 
	{
	cout&lt;&lt;&quot;Port: &quot;&lt;&lt;port&lt;&lt;&quot; is OPEN!\n&quot;;
	ofstream pp(&quot;Open Port list.txt&quot;,ios_base::app);
	pp&lt;&lt;&quot;Port: &quot;&lt;&lt;port&lt;&lt;&quot; is OPEN!\n&quot;;
	pp.close();
	}

  closesocket(sa);
  WSACleanup();

  port++;
  if(port==10000)
	  break;
  }
</code></pre>
<p>ihr könnt ihn verändern wie ihr wollt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2186031</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2186031</guid><dc:creator><![CDATA[Ergan]]></dc:creator><pubDate>Sun, 26 Feb 2012 19:20:57 GMT</pubDate></item><item><title><![CDATA[Reply to versuch Portscanner on Sun, 26 Feb 2012 19:47:08 GMT]]></title><description><![CDATA[<p>Da abhängig von der Bandbreite ein TCP-Handshake unterschiedlich lang dauern kann, wartet connect() eine Weile bis es annimmt, dass keine Verbindung hergestellt werden kann.</p>
<p>Eine Möglichkeit das zu Beschleunigen ist Parallelisierung, also durch mehrere Threads gleichzeitig mehrere Ports zu testen.</p>
<p>Man könnte allerdings auch Raw Sockets verwenden (das Programm muss dann mit administrativen Rechten laufen) und den Handshake selber implementieren, dann lässt sich das ganze auch in einem Thread asynchron realisieren.<br />
Außerdem kann man den Handshake so unvollständig lassen (man lässt das letzte ACK Paket weg), dann wird der Versuch auch nicht geloggt, weil nie eine volle Verbindung zu Stande kommt. Man weiß aber, dass der Port offen ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":-)"
      alt="🙂"
    /></p>
<p>Ich weiß nicht ob, das irgendwie geht, aber ich denke man könnte auch den timeout über irgendwelche Optionen ändern, sodass connect() schneller zurückkehrt. Das ist aber bei geringe Bandbreite wieder schlecht, da so langsame Verbindungen fälschlicherweise als geschlossene Ports interpretiert werden könnten.</p>
<p>MfG DrakoXP</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2186038</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2186038</guid><dc:creator><![CDATA[DrakoXP]]></dc:creator><pubDate>Sun, 26 Feb 2012 19:47:08 GMT</pubDate></item><item><title><![CDATA[Reply to versuch Portscanner on Sun, 26 Feb 2012 19:54:26 GMT]]></title><description><![CDATA[<p>Cool danke dann verusch ich es aber mal mit mehreren theads <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2186041</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2186041</guid><dc:creator><![CDATA[Ergan]]></dc:creator><pubDate>Sun, 26 Feb 2012 19:54:26 GMT</pubDate></item><item><title><![CDATA[Reply to versuch Portscanner on Sun, 26 Feb 2012 20:06:29 GMT]]></title><description><![CDATA[<p>eine sache gibt es noch ich wollte es jetzt so machen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
<p>for(int i=0;i==10000;i++)<br />
{<br />
CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)scanner, NULL, NULL,0);<br />
Sleep(200);<br />
port++;<br />
}</p>
<p>(scanner ist dann das er jeden port einzelnd duchgeht)</p>
<p>aber das wird geblocked <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /><br />
warum?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2186044</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2186044</guid><dc:creator><![CDATA[Ergan]]></dc:creator><pubDate>Sun, 26 Feb 2012 20:06:29 GMT</pubDate></item><item><title><![CDATA[Reply to versuch Portscanner on Sun, 26 Feb 2012 20:49:06 GMT]]></title><description><![CDATA[<p>und an welcher Stelle im Code erfährt dein Thread, welchen Port er testen soll?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2186053</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2186053</guid><dc:creator><![CDATA[DrakoXP]]></dc:creator><pubDate>Sun, 26 Feb 2012 20:49:06 GMT</pubDate></item></channel></rss>