port checker

Vývojová prostředí, aplikace, skripty, http://www... síťové programy, internet, sdílení...
Odpovědět
NEONET
Středně pokročilý
Středně pokročilý
Uživatelský avatar
Registrován: 16. črc 2007
Bydliště: Ostrava - Hrabůvka

port checker

Příspěvek od NEONET »

Kód: Vybrat vše

<?php


$addr = $_SERVER["REMOTE_ADDR"];

if ($_GET["addr"]) {
  $addr = $_GET["addr"];
}
if ($_GET["port"]) {
  $port = $_GET["port"];
}
if ($_GET["port2"]) {
  $port2 = $_GET["port2"];
}


echo '<form action="' .$_SERVER["PHP_SELF"]. '" method="get">
  <div style="width:300px;background:#f1f1f1;padding:10px;font-family:arial;">
    <table width="100%" border="0" cellspacing="0" cellpadding="2">
      <tr>
        <td colspan="2" style="font-size:12px;">Zadej adresu serveru a port, na který chceš danou adresu otestovat. (Vyplň i druhý port, v případě kontroly rozsahu portů)</td>
      </tr>
      <tr>
        <td width="30%" style="font-size:12px;">Adresa</td>
        <td width="80%"><input type="text" name="addr" value="' .$addr. '"></td>
      </tr>
      <tr>
        <td width="30%" style="font-size:12px;">Port</td>
        <td width="80%"><input type="text" name="port" value="' .$port. '"></td>
      </tr>
      <tr>
        <td width="30%" style="font-size:12px;">Port 2</td>
        <td width="80%"><input type="text" name="port2" value="' .$port2. '"></td>
      </tr>
        <td width="30%">&nbsp;</td>
        <td width="80%"><input type="submit" value="Zkontroluj"></td>
      </tr>
    </table>
  </div>
</form>
';

if ($_GET["addr"]) {
  if ($_GET["port"] && !$_GET["port2"]) {
    $fp = @fsockopen($addr, $port, $errno, $errstr, 2);
    $success = "#FF0000";
    $success_msg = "nepřijímá pakety";
    if ($fp) {
      $success = "#99FF66";
      $success_msg = "přijímá pakety";
    }
    @fclose($fp);
    echo '<div style="width:300px;background:' .$success. ';padding:10px;font-family:arial;font-size:12px;">
    Adresa <b>"' .$addr. ':' .$port. '"</b> ' .$success_msg. '
  </div>';
  }
  else if ($_GET["port"] && $_GET["port2"]) {
    $p1 = $_GET["port"];
    $p2 = $_GET["port2"];
    if ($p1 == $p2) {
      $fp = @fsockopen($addr, $port, $errno, $errstr, 2);
      $success = "#FF0000";
      $success_msg = "nepřijímá pakety";
      if ($fp) {
        $success = "#99FF66";
        $success_msg = "přijímá pakety";
      }
      @fclose($fp);
      echo '<div style="width:300px;background:' .$success. ';padding:10px;font-family:arial;font-size:12px;">
      Adresa <b>"' .$addr. ':' .$port. '"</b> ' .$success_msg. '
      </div>';
    }
    else {
      if ($p1 < $p2) {
        $s = $p1;
        $st = $p1;
        $e = $p2;
      }
      else if ($p2 < $p1) {
        $s = $p2;
        $st = $p2;
        $e = $p1;
      }
      while ($s <= $e) {
        $fp = @fsockopen($addr, $s, $errno, $errstr, 1);
        if ($fp) {
          $p_open = $p_open. " " .$s;
          $p_1 = 1;
        }
        @fclose($fp);
        $s++;
      }
      if ($p_1) {
        $c = "#99FF66";
        $m = "Na adrese <b>" .$addr. "</b> naslouchají porty <b>" .$p_open. "</b> z rozsahu " .$st. "-" .$e;
      }
      else {
        $c = "#FF0000";
        $m = "Žádné porty na adrese <b>" .$addr. "</b> z rozsahu <b>" .$st. "-" .$e. "</b> nepřijímají pakety";
      }
      echo '<div style="width:300px;background:' .$c. ';padding:10px;font-family:arial;font-size:12px;">' .$m. '</div>';
    }
  }
}
?>
a tento skript zase pouzivam na skenovani portu... jenze co vidim, tak na moji ip zobrazi taky ze nasloucha vse, na seznam.cz nasloucha podle nej taky vse, najde nekdo tady chyby?

E// pro ty co skript poznavaji, ano, je vykradeny a predelany, zapisoval jeste titulek ale bude to vlozeno prez include do clanku, takze copyrighty budou tam
MB: Gigabyte P35-DS3R *|*CPU: Intel C2D E6850 @ 3.6Ghz *|*RAM: 4GB @ 800Mhz CL4 *|*GPU:Radeon HD3850@730/2048MHz *|* Windows 8 x64
OndraSter
Středně pokročilý
Středně pokročilý
Uživatelský avatar
Registrován: 22. úno 2006
Bydliště: Praha / ČVUT FIT
Kontaktovat uživatele:

Re: port checker

Příspěvek od OndraSter »

Někam zkus vypsat $errstr a odebrat @ před fsockopen.


http://cz2.php.net/manual/en/function.f ... .php#72674 (Je to vpodstatě totéž, ale kratší).
PC: i5-2500k 4.5GHz/24GB RAM/GTX560 Ti 1GB/>5TB - W7 Prof x64; Microsoft SideWinder X3 notebook: HP 6715b (4GB RAM) - W7 Prof x64;
mobil: Nokia Lumia 800 Cyan, 16GB; tablet: Toshiba Portege M200 (2GB, 64GB SSD, GeForce FX5200) - W7 Prof x32


Nahraďte Arduino výkonnější variantou!
Vývojová prostředí a nástroje | Webové prohlížeče | Seznam freehostingů
NEONET
Středně pokročilý
Středně pokročilý
Uživatelský avatar
Registrován: 16. črc 2007
Bydliště: Ostrava - Hrabůvka

Re: port checker

Příspěvek od NEONET »

errstr zkusim, jinak pokud je chyba a nepripoji se k serveru, fsockopen hodi chybu, proto ten zavinac
MB: Gigabyte P35-DS3R *|*CPU: Intel C2D E6850 @ 3.6Ghz *|*RAM: 4GB @ 800Mhz CL4 *|*GPU:Radeon HD3850@730/2048MHz *|* Windows 8 x64
OndraSter
Středně pokročilý
Středně pokročilý
Uživatelský avatar
Registrován: 22. úno 2006
Bydliště: Praha / ČVUT FIT
Kontaktovat uživatele:

Re: port checker

Příspěvek od OndraSter »

Já vím k čemu je ten zavináč, právě proto ho odstraň...
PC: i5-2500k 4.5GHz/24GB RAM/GTX560 Ti 1GB/>5TB - W7 Prof x64; Microsoft SideWinder X3 notebook: HP 6715b (4GB RAM) - W7 Prof x64;
mobil: Nokia Lumia 800 Cyan, 16GB; tablet: Toshiba Portege M200 (2GB, 64GB SSD, GeForce FX5200) - W7 Prof x32


Nahraďte Arduino výkonnější variantou!
Vývojová prostředí a nástroje | Webové prohlížeče | Seznam freehostingů
Odpovědět

Zpět na „Programování a web“