#python #linux #networking #ping
Вопрос:
У меня есть несколько вопросов. Я нахожусь в Linux, и мне нужно проверить пинг для 254 ПК сразу, например, с помощью python :
У меня есть IP-адрес 10.1.1.1 … 10.1.1.254, и все, что мне нужно, это проверить, успешно ли я подключился к этому компьютеру с помощью python.
таким образом, общий объем производства должен быть :
пк 10.1.1.1 Пингует
пк 10.1.1.2 Не Пингует
пинг ПК 10.1.1.3
Так далее до 10.1.1.254
Ответ №1:
import subprocess
ips = ["192.168.1.{}".format(i) for i in range(1,255)]
mainList = set()
def ping(ips):
for num,i in enumerate(ips):
print(f'Searching Host {i} Itration Number {num}')
try:
p = subprocess.Popen(['ping', '-c1', i], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
p.communicate(timeout=(0.1))
except subprocess.TimeoutExpired:
pass
else:
print(f'***Host found - Add to array***')
mainList.add(i)
print(mainList)
ping(ips)