Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

natanrs

Cadastro de IPs

Recommended Posts

Bom dia Pessoal,

 

Estou desenvolvendo um sistema que irá cadastrar os IPs da instituição. Mas não consigo pensar na melhor forma de fazer isso. O sistema já possui vários módulos, está faltando apenas esse. Vou explicar o que preciso.

 

A empresa possui várias filiais, cada uma recebe seu range de IPs públicos e possui seu range de IPs privados. O sistema tem um módulo chamado "IPs & Serviços". Tem um um formulário que pergunta qual é o primeiro IP do range, e o último.

 

Exemplo: Digamos que na filial X possui:
- IPs públicos: 200.178.115.1 ao 200.178.115.15
- IPs privados: 192.168.12.1 a 192.168.12.254 (192.168.12.0/24).

Eu quero que o sistema receba o primeiro e último IPs e gere o intervalo desses IPs para cadastrar no banco. Para o usuário não ter que fazer cadastro individual de todos os IPs. É para ser um processo automatizado. Na hora que o cara põe os 2 IPs e mandar cadastrar o banco, o sistema vai fazer vários inserts, um registro diferente para cada IP do range.

Alguma idéia?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá @natanrs. Seja bem-vindo!

 

Para cadastrar todos os IPs do range, você pode fazer assim:

<?php
// Fonte: http://codepad.org/3QDQ2OVK

$ip1 = '192.168.1.2';
$ip2 = '192.168.1.10';

for ( $ip = ip2long( $ip1 ) ; $ip <= ip2long( $ip2 ) ; $ip++ )
    echo long2ip($ip) . "\n";

 

Trocando echo pela query, é claro...

Compartilhar este post


Link para o post
Compartilhar em outros sites
10 minutos atrás, natanrs disse:

Deu certo. Obrigado. xD

Legal :)

 

1 hora atrás, natanrs disse:

Muito obrigado. Só mais uma dúvida. Qual tipo de dado devo escolher para armazenamento do IP no banco? Tipo INT?

Também passei por essa questão recentemente... o método mais apropriado para esse tipo de dado seria binário, por ocupar menos espaço no banco, mas isso gera mais processamento, pois você precisaria converter os dados antes e depois de usá-los.

INT não creio que seja o melhor, pois pode gerar algumas conversões indesejadas, comuns em processamento de números grandes.

Aconselho usar CHAR(15) (char, não varchar).

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Andre74
      Boa tarde iMasters! Sou novo aqui no fórum! 
       
      Estou precisando de uma ajuda para acessar imagem de uma Câmera IP!
       
      Usando o seguinte código está dando erro! 
       
      -----
      document.getElementById('img_camera').src = 'http://root:pass@192.168.15.119/mjpg/video.mjpg';    
      -----
       
      Erro Apresentado no Console do Chrome:
      Subresource requests whose URLs contain embedded credentials...
       
       
      Obs.: Preciso passar usuário e senha!
       
      Agora se mando abrir uma nova janela com a mesma URL, dá certo... Mas preciso abrir a imagem em um campo!!!
       
      -----
      window.open ('http://root:pass@192.168.15.119/mjpg/video.mjpg', '_self' , 'width = 320, height = 240');
      -----
       
      Agradeço desde já a todos!
      Abraço!
    • Por Alberto Nascimento
      Como consigo exibir em um campo TextBox simples do formulário o IP do visitante sempre que o mesmo abrir a página.
       
      <php> include("ipdateclock.php"); </php> <?php echo "$ip"; ?>  
      Utilizava este código na versão 5.3 do PHP, porém agora no 5.6 não consigo mais exibir.
    • Por Dark_Trap000
      Ola, eu tenho um problema ao salvar ips permitidos no MySQL
      segue o codigo de salvamento
      <?php session_start(); include "conexao.php"; if (empty($_SESSION['usuario'])) { header('Location: login.php'); exit(); } $ip = $_SESSION['ip']; echo $pegar_ip = $_SERVER["REMOTE_ADDR"]; if($ip == $pegar_ip) { echo "IP Autorizado!!!"; } else if($ip == 0) { $pegar_ip = $_SERVER["REMOTE_ADDR"]; echo "IP Não Registrado!!!"; $sql = "UPDATE usuario SET creditos = $salvar WHERE usuario_id = $id"; die(); } ?> ele chega á estar tudo certo, + o problema e salvar no mysql. qual o problema ?
    • Por Dark_Trap000
      Ola, eu tenho um problema ao salvar ips permitidos no MySQL
      segue o codigo de salvamento
      <?php session_start(); include "conexao.php"; if (empty($_SESSION['usuario'])) { header('Location: login.php'); exit(); } $ip = $_SESSION['ip']; echo $pegar_ip = $_SERVER["REMOTE_ADDR"]; if($ip == $pegar_ip) { echo "IP Autorizado!!!"; } else if($ip == 0) { $pegar_ip = $_SERVER["REMOTE_ADDR"]; echo "IP Não Registrado!!!"; $sql = "UPDATE usuario SET creditos = $salvar WHERE usuario_id = $id"; die(); } ?> ele chega á estar tudo certo, + o problema e salvar no mysql. qual o problema ?
    • Por WEBCHARLES
      Blz galera, estou com uma grande dificuldade com JAVASCRIPT, estou tendo problema com meu PHP para retornar o IP com função $_SERVER['REMOTE_ADDR']; mas esta, me retorna apenas o gateway da nossa rede, acreditamos que seja algum problema interno. Daí recorri ao javascript abaixo, que está me retornando o ip publico e para mim, já ajuda bastante. 
      O que eu gostaria é o seguinte, a partir desse ip que está sendo mostrado pelo javascript, fazer um alert redirecionando se os 10 primeiros algarismos forem diferentes de 200.254.21 sair da pagina.
       
      Não sei trabalhar com if no javascript. Alguém pode me ajudar?
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> <script type="application/javascript" src="https://api.ipify.org?format=jsonp&callback=getIP"></script> <script type="application/javascript"> $(function() { $.getJSON("https://api.ipify.org?format=jsonp&callback=?", function(json) { document.write("Meu IP público é: ", json.ip); } ); }); </script>
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.