• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

IP und MAC Adresse bannen

Status
Für weitere Antworten geschlossen.

Luzifer

Neues Mitglied
Hallo,
Ich suche 2 "Scripte" wobei , ich da selber viel umcoden werde, mir geht es mal nur um die grundlage .. weil ich mir wirklich nicht vorstellen kann , wie ich soetwas coden könnte...

Also ..
1.IP Bann script :
Es soll einfach die IP oder IP-Range was ich eintrage von meiner Homepage sperren .. EIne seite soll dann ausgegeben werden .. ich denke mit einer if -else schleife wäre das am einfachsten ..

2. Dann suche cih ein Script was die Mac adresse von eminer Homepage speert..also dsa gleiche nur statt IP die MAC-Adresse heißt, wenn ein User mit der mac adresse auf meine Homepage geht.. soll auch wieder eine Seite kommne ...

Danke !
 
Da du ja nur einen Ansatz braucht, habe ich dir hier einen Ausschnitt meines Web-Counters, der alle IP's auf eine Datei aufzeichnet.
PHP:
function pruf_IP($rem_addr) {
  global $ipdatei,$zeit,$anzahl;
  @$ip_array = file($ipdatei);
  $reload_dat = fopen($ipdatei,"w");
  $this_time = time();
  $anzahl = count($ip_array);
  for ($i=0; $i<$anzahl; $i++) {
    list($ip_addr,$time_stamp) = explode("|",$ip_array[$i]);
    if ($this_time < ($time_stamp+60*$zeit)) {
      if ($ip_addr == $rem_addr) {
        $gefunden=1;
      }
      else {
        fwrite($reload_dat,"$ip_addr|$time_stamp");
      }
    }
  }
  fwrite($reload_dat,"$rem_addr|$this_time\n");
  fclose($reload_dat);
  return ($gefunden==1) ? 1 : 0;
}

Es ist relativ simpel gemacht.

MfG, matibaski
 
Ich denke, die einfachste Möglichkeit eine Ip von der Homepage fern zu halten ist und bleibt htaccess.

Wenn du die IP adressen über eine Maske eingeben möchtest, würde sich dies ja mit php verbinden lassen
PHP:
<?php
if(!isset($_POST["ip"]))
{
  ?>
  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  <html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
  </head>
  <body>
  <form action="" method="post">
  IP Adresse: <input type="text" name="ip">&nbsp;
  <input type="submit" name="submit" value="eintragen">
  </form>
  </body>
  </html>
  <?php
}
else
{
  ?>
  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  <html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
  </head>
  <body>
  <?php
  $ip_adresse = $_POST["ip"];
  $main_dir = "./";
  $Inhalt = "order allow,deny\ndeny from ".$ip_adresse."\nallow from all";
  if($htaccess = @fopen($main_dir."/.htaccess","w"))
  {
    fputs($htaccess,$Inhalt);
    fclose($htaccess);
    echo "Datei erfolgreich erstellt."
  }
  else
  {
    echo "Öffnen der .htaccess Datei fehlgeschlagen\n";
  }
  ?>
  </body>
  </html>
  <?php
}
?>

Aber wie man an die MAC-Adresse rankommt, da bin ich doch wirklich überfragt
 
PHP:
function getMac ( $Ip) {
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
$output = shell_exec("nbtstat -a $Ip");
$output = explode("\n",$output);
$mac_line = explode ("=", $output[ sizeof($output)-3 ]);
$sMacAddress = trim($mac_line[1]);
} else {
$location = `which arp`;
$arpTable = `$location -n $Ip`;
$arpSplitted = split("\n",$arpTable);

foreach ($arpSplitted as $value) {

$valueSplitted = split(" ",$value);

foreach ($valueSplitted as $spLine) {

if (preg_match("/$Ip/",$spLine)) {
reset($valueSplitted);

foreach ($valueSplitted as $spLine) {
if (preg_match("/[0-9a-f][0-9a-f][:-]".
"[0-9a-f][0-9a-f][:-]".
"[0-9a-f][0-9a-f][:-]".
"[0-9a-f][0-9a-f][:-]".
"[0-9a-f][0-9a-f][:-]".
"[0-9a-f][0-9a-f]/i",$spLine)) {
$sMacAddress = $spLine;
break;
}
}
}
}
}
}
return $sMacAddress;
}

Hiermit bekommste die mac addy ;-)

dann kannste ja einfach ne txt machen da die gebannten reinschreiben
und z.B \n oder | <-- exploden
und dann mit der schleife durchgehen lassen...
wenn true dann die("BANNED"); oder so
ist ja nicht so schwer

e:/ ich weis nur net welche mac addy du bekommst die vom server oder vom user ich habs nur lokal getestet
 
Zuletzt bearbeitet:
oke mal danke für eure Scripts...
Joa..ähmm das MAC-Bann script ist schon in etwa so wie ich mir es vorstelle..
ABer das mti der IP ... @ Frank..
Ich will aber ned das was mit .htaccess kommt .. eben das der dann auf "meine" seite was ich ihn für ihm erstelle weitergeleitet wird ..
 
@ Frank..
Ich will aber ned das was mit .htaccess kommt .. eben das der dann auf "meine" seite was ich ihn für ihm erstelle weitergeleitet wird ..

Dann würde ich diesen Weg nehmen:

Du hast die gebannten IP's in einer Datenbank oder einem Textdokument und vergleichst dann nur noch mit der IP des Besuchers
PHP:
<?php
$ip = "20.157.151.15" //aus DB oder TEXT ausgelesen
if($ip == $_SERVER["REMOTE_ADDR"])
{
  header("Location: banned.php"); //Wurde gebannt
}
else
{
  ?>
  Herzlich Willkommen auf meiner Seite!
  <?php
}
?>
 
oke genau so in etwa stellte ich mir das vor ;) Super danke..
ABer ich muss leider sagen , ich habe das MAC-script getewstet..es wird aber nichts ausgegeben
 
Linux oder Windows server?

bzw. ich habs nru lokal getestet also weis ich net welche mac du bekommst die vom server oder die vom user xD

an deiner stelle würde ich die hosts bannen ;-)
 
rofl
Ne ,das lustige ist ja , ich bekomme keine MAC Adresse...
ich hab da jetz einige dinge probiert entweder es kommt garnichts
ODER es steht dann eben :" $sMacAddress "^^
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben