Visualizzazione dei risultati da 1 a 10 su 11

Hybrid View

  1. #1
    no il concetto è il seguente:

    diciamo che $_SERVER['REMOTE_ADDR'] dia un ip del tipo "10.10.10.123", la tua domanda è "ma 10.10.10.123 è della mia intranet?"

    Ora, il problema lo sposti sulla intranet: "come faccio a capire che l'ip appartiente alla mia intranet?" una soluzione è dire "un ip appartiene alla mia intranet se appartiene ad una delle reti definite nella intranet". Quindi diciamo che la tua intranet è composta dalle seguenti reti:

    10.10.8.0/24
    10.10.9.0/24
    10.10.10.0/24
    10.10.11.0/24

    dato lo script del link prima (che è il primo che ho trovato su google, del cui funzionamento non garantisco ma così ad occhio mi sembra corretto), un tuo codice potrebbe essere:

    Codice PHP:

    $clientIp 
    "10.10.10.123"//da sostiturie con $_SERVER['REMOTE_ADDR']

    $intranet = [
    "10.10.8.0/24",
    "10.10.9.0/24",
    "10.10.10.0/24",
    "10.10.11.0/24"
    ];

    $result false;
    foreach(
    $intranet as $range)
    {
    if(
    ip_in_range($ip,$range)){
    $result true;
    break;
    }
    }

    if(
    $result){
    echo 
    "ip $ip in intranet";
    }else{
    echo 
    "ip $ip non è in intranet";

    per sapere quali reti costituiscono la tua intranet, il modo piu efficace è mappare nello script a mano tutte le reti (tramite file di configurazione? tramite inserimento dati via interfaccia web? leggendo da un db? ) perchè non puoi sapere a priori in maniera semplice dalla macchina su cui esegui lo script quali sono le reti della intranet

    più o meno una cosa del genere.
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    142
    Tutto abbastanza chiaro... ma siccome il portale dovrà risiedere sulla rete intranet, non esiste un modo che mi dice "guarda, sto girando su questa rete" e in base al range che mi da fare il controllo con REMOTE ADDRESS? Nel caso in cui questa cosa non sia fattibile e debba necessarimanete mettere in $intranet a mano tutti gli indirizzi disponibili, come li recupero questi?

  3. #3
    Utente di HTML.it L'avatar di MySQL
    Registrato dal
    May 2015
    Messaggi
    729
    Quote Originariamente inviata da fablan Visualizza il messaggio
    Tutto abbastanza chiaro... ma siccome il portale dovrà risiedere sulla rete intranet, non esiste un modo che mi dice "guarda, sto girando su questa rete" e in base al range che mi da fare il controllo con REMOTE ADDRESS? Nel caso in cui questa cosa non sia fattibile e debba necessarimanete mettere in $intranet a mano tutti gli indirizzi disponibili, come li recupero questi?
    Scusa ma ribadisco.
    Il mondo è diviso in "internet" e "reti locali" (non routabili), ragionevolmente la tua LAN.
    Che questa sia semplice o complicata non cambia nulla.
    Se l'indirizzo IP inizia per 10.x.x.x, oppure 172.16.x.x, oppure 192.168.x.x allora NON è un indirizzo internet.
    Non serve chissà quale logica complessa.

    A MENO CHE non abbiate fatto una rete internet (non intranet) con dei gateway boundary che rimappano gli indirizzi, ma finora mi è capitato di vedere una cosa del genere solo una volta

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.