【发布时间】:2018-07-13 09:13:39
【问题描述】:
我正在尝试对路由器的所有端口进行自动以太网带宽测试。我的设置涉及从具有 1 个连接的 Windows PC 连接到路由器和具有 7 个连接的 Linux PC。我正在使用 Paramiko 模块通过 SSH 连接到 Linux PC 以启动运行良好的以太网测试。
但是,我想看看如果我在测试中移除其中一根以太网电缆会发生什么。这会导致程序崩溃,并说“尝试对无法访问的主机进行套接字操作”。我希望能够避免这个错误。有没有办法检查连接是否可行,以免我崩溃?理想情况下,我希望代码跳过不良连接并继续使用下一条电缆。这是所用代码的sn-p:
ssh.connect( hostname = target_host[i] , username = un, password = pwd )
stdin, stdout, stderr = ssh.exec_command('iperf -c 192.168.0.98')
t_read=stdout.read()
read[i]=t_read[360:375]
raw_speed[i]=t_read[360:364]
address[i]=t_read[221:233]
print('Receieved data on cable %s from %s via IP: %s at %s \n'%(Cable[i],WMI_Port[i],address[i],read[i]))
stdin, stdout, stderr = ssh.exec_command('sudo ifconfig %s down'%(target_eth[i]))
print ('Disabling %s : \n\n'%(WMI_Port[i]))
ssh.close()
【问题讨论】:
标签: python ubuntu ssh paramiko iperf