From bf4f4f1a7d64ba04d5e511a89e4e64c0e8e97687 Mon Sep 17 00:00:00 2001 From: Marsh232 Date: Wed, 7 Sep 2022 13:11:31 +0300 Subject: [PATCH] Add basic output --- .idea/workspace.xml | 44 ++++++++++++++++++++++++++++++++++++++++---- main.py | 28 +++++++++++++++++++++------- 2 files changed, 61 insertions(+), 11 deletions(-) diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 2c01574..90defdd 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -4,7 +4,10 @@ + + + \ No newline at end of file diff --git a/main.py b/main.py index 9ad03d5..d9f7e95 100644 --- a/main.py +++ b/main.py @@ -1,11 +1,25 @@ import ipaddress -ip = input('Введите ip: ') # Пользователь вводит ip -list_ip = ip.split('/') # Разделяет вводимый ip на часть с маской, и без -ipv4 = ipaddress.ip_address(list_ip[0]) -print('Ваш ip адрес:', ip) # Выводит например "Ваш ip адрес: 192.168.10.128/24" +def main(ip): + list_ip = ip.split('/') # Разделяет вводимый ip на часть с маской, и без + ipv4 = ipaddress.ip_address(list_ip[0]) + print('Ваш ip адрес:', ip) # Выводит например "Ваш ip адрес: 192.168.10.128/24" -net = ipaddress.ip_network(ip, strict=False) # В функцию кладётся сетевая часть ip, без хостовой части -print(net) -print(net.netmask) \ No newline at end of file + net = ipaddress.ip_network(ip, strict=False) # В функцию кладётся сетевая часть ip, без хостовой части + print('Маска:', net.netmask, '=', list_ip[1], '\n') # Выводит маску + print('Network:', net) # Выводит сеть + print('Broadcast:', net.broadcast_address) # Выводит broad + print('HostMin:', net[1]) + print('HostMax:', net[-2]) + print('Hosts:', len(list(net.hosts()))) # Выводит кол-во хостовых ip + for n_ip in net.hosts(): + if str(n_ip) == list_ip[0]: + list_n_ip = str(n_ip).split('.') + print('№ в сети:', list_n_ip[3]) + break + + +if __name__ == '__main__': + addr = input('Введите ip: ') # Пользователь вводит ip + main(addr)