DarkProgrammer000

Lista de IP

Aug 3rd, 2021
957
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. '''
  2. Programa: Listando IPs
  3. '''
  4.  
  5. # Biblioteca
  6. from os import system
  7. from ipaddress import ip_network
  8.  
  9. # Metodo: Conclusao da lista
  10. def conclusao(n):
  11.     print("\033[01;34m\n # Lista %.0f concluida \033[01;37m" % n)
  12.  
  13. # Metodo: Redes
  14. def rede(n):
  15.  
  16.     try:
  17.         # Estrutura de decisao: Rede 1
  18.         if n == 1:
  19.  
  20.             # Arquivo
  21.             arquivo = open("rede1.txt", "w")
  22.  
  23.             # Restrito a um endereco (conserto de erro)
  24.             rede1 = ip_network("192.168.1.0/32", strict=False)  # Muda 0 casas
  25.  
  26.             # Estrutura de repeticao + Marcador de posicao (estilo C)
  27.             for i in rede1:
  28.                 arquivo.write("%s\n" % i)
  29.  
  30.         # Estrutura de decisao: Rede 2
  31.         elif n == 2:
  32.             arquivo = open("rede2.txt", "w")
  33.  
  34.             # Restrito a um endereco (conserto de erro)
  35.             rede2 = ip_network("192.168.1.0/24", strict=False)  # Muda 1 casas -> 0
  36.  
  37.             # Estrutura de repeticao + Marcador de posicao (estilo C)
  38.             for i in rede2:
  39.                 arquivo.write("%s\n" % i)
  40.  
  41.         # Estrutura de decisao: Rede 3
  42.         elif n == 3:
  43.             arquivo = open("rede3.txt", "w")
  44.  
  45.             # Restrito a um endereco (conserto de erro)
  46.             rede3 = ip_network("192.168.1.0/16", strict=False)  # Muda 2 casas -> 1.0
  47.  
  48.             # Estrutura de repeticao + Marcador de posicao (estilo C)
  49.             for i in rede3:
  50.                 arquivo.write("%s\n" % i)
  51.  
  52.         # Estrutura de decisao: Rede 4
  53.         elif n == 4:
  54.             arquivo = open("rede4.txt", "w")
  55.  
  56.             # Restrito a um endereco (conserto de erro)
  57.             rede4 = ip_network("192.168.1.0/8", strict=False)  # Muda 3 casas -> 168.1.0
  58.  
  59.             # Estrutura de repeticao + Marcador de posicao (estilo C)
  60.             for i in rede4:
  61.                 arquivo.write("%s\n" % i)
  62.  
  63.         # Estrutura de decisao: Rede 5
  64.         elif n == 5:
  65.             arquivo = open("rede5.txt", "w")
  66.  
  67.             # Restrito a um endereco (conserto de erro)
  68.             rede5 = ip_network("192.168.1.0/4", strict=False)  # Muda 4 casas -> 192.168.0.1
  69.  
  70.             # Estrutura de repeticao + Marcador de posicao (estilo C)
  71.             for i in rede5:
  72.                 arquivo.write("%s\n" % i)
  73.  
  74.     except Exception as erro:
  75.         print("\033[01;31m Invalido \033[01;37m")
  76.  
  77.     conclusao(n)
  78.  
  79. # Funcao: Menu principal
  80. def menu():
  81.  
  82.     while True:
  83.  
  84.         try:
  85.             # Lista controle
  86.             lista_menu = [1, 2, 3, 4, 5]
  87.  
  88.             # Apresentacao
  89.             system("clear")
  90.             print("")
  91.             print("\033[01;34m ++++++++++++++++++++++++++++++\033[01;37m")
  92.             print("\033[01;32m           IP List             \033[01;37m")
  93.             print("\033[01;34m ++++++++++++++++++++++++++++++\033[01;37m")
  94.             print("\033[01;31m [1] Rede 1: 1             IP  \033[01;37m")
  95.             print("\033[01;32m [2] Rede 2: 255           IPs \033[01;37m")
  96.             print("\033[01;33m [3] Rede 3: 65.025        IPs \033[01;37m")
  97.             print("\033[01;34m [4] Rede 4: 16.581.375    IPs \033[01;37m")
  98.             print("\033[01;35m [5] Rede 5: 4.228.250.625 IPs [INTERNET INTEIRA !!!] \033[01;37m")
  99.  
  100.             # Entrada de dados
  101.             opc = int(input("\n\033[01;36m + Opc: \033[01;37m"))
  102.  
  103.             # Estrutura de decisao
  104.             if opc in lista_menu:
  105.                 return opc
  106.  
  107.         except:
  108.             continue
  109.  
  110. # Metodo: Principal
  111. def main():
  112.     rede(menu())
  113.  
  114. # Execucao
  115. if __name__ == '__main__':
  116.     main()
RAW Paste Data