Last active
May 14, 2021 18:01
-
-
Save jaganadhg/02987a145776593c77c146d2cc0260ed to your computer and use it in GitHub Desktop.
gip
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import itertools | |
base_ip = "1.1.1.1" | |
ip_max = 3 | |
def gen_ip_smart(base_ip : str) -> list: | |
ip_elem = base_ip.split(".") | |
ip_elem = list(map(int,ip_elem)) | |
ip_num_ranges = [range(ip_elem[0],ip_max),range(ip_elem[1],ip_max), range(ip_elem[2],ip_max), range(ip_elem[3],ip_max)] | |
all_ips = list(itertools.product(*ip_num_ranges)) | |
all_ip_list = [".".join(map(str,ipn)) for ipn in all_ips] | |
return all_ip_list | |
def generate_ips_all(base_ip : str) -> list: | |
ip_list = base_ip.split(".") | |
ip_list = list(map(int,ip_list)) | |
all_ips = list() | |
#create_first_max | |
all_ips.extend(["{}.{}.{}.{}".format(ip_list[0],ip_list[1],ip_list[2],suffix) for suffix in range(ip_list[3],257)]) | |
all_ips.extend(["{}.{}.{}.{}".format(ip_list[0],ip_list[1],suffix,ip_list[3]) for suffix in range(ip_list[2],257)]) | |
all_ips.extend(["{}.{}.{}.{}".format(ip_list[0],suffix, ip_list[2],ip_list[3]) for suffix in range(ip_list[1],257)]) | |
all_ips.extend(["{}.{}.{}.{}".format(suffix,ip_list[1],ip_list[2],ip_list[3]) for suffix in range(ip_list[0],257)]) | |
return all_ips | |
if __name__ == "__main__": | |
ip_lists = generate_ips_all(base_ip) | |
print(ip_lists) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment