求助:使用jnpr.junos库建立设备连接时出现SSHError报错
解决jnpr.junos连接Junos设备时的SSHError: Could not open socket问题
问题描述
使用jnpr.junos库建立Junos设备连接时,出现以下报错:
File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/jnpr/junos/device.py", line 1374, in open self._conn = netconf_ssh.connect( ^^^^^^^^^^^^^^^^^^^^ File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/ncclient/manager.py", line 187, in connect return connect_ssh(*args, **kwds) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/ncclient/manager.py", line 139, in connect_ssh session.connect(*args, **kwds) File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/ncclient/transport/ssh.py", line 288, in connect raise SSHError("Could not open socket to %s:%s" % (host, port)) ncclient.transport.errors.SSHError: Could not open socket to 10.233.146.10:830
测试代码如下:
from pprint import pprint from jnpr.junos import Device from jnpr.junos.utils.config import Config print("Prueba de conexion a equipo") dev = Device(host='10.233.146.10', user='user', password='password' ) dev.open() print ("the router basic information is: ") cu = Config(dev) print (cu) print("closing connection") dev.close()
排查与解决步骤
验证网络连通性
先确认执行脚本的主机能正常ping通目标设备:ping 10.233.146.10如果ping不通,排查设备是否在线、路由是否可达、中间网络是否有阻断。
检查端口可达性
使用nc或telnet测试830端口(NETCONF默认端口)是否开放:nc -zv 10.233.146.10 830 # 或者用telnet telnet 10.233.146.10 830若连接失败,说明设备未开启830端口,或中间防火墙拦截了流量。
确认设备NETCONF配置
登录Junos设备,检查NETCONF服务是否启用:show system services netconf若未配置,添加以下配置并提交:
set system services netconf ssh port 830 commit调整SSH兼容性参数
若设备SSH版本与客户端不兼容,可在初始化Device时指定SSH参数:# 读取本地ssh_config配置 dev = Device(host='10.233.146.10', user='user', password='password', ssh_config=True) # 或强制指定SSH协议版本 dev = Device(host='10.233.146.10', user='user', password='password', ssh_args=['-o', 'Protocol=2'])检查防火墙规则
确认执行脚本的主机防火墙允许出站830端口流量,同时设备侧防火墙/安全组允许入站830端口的SSH连接。验证设备端口占用情况
登录设备,检查830端口是否被其他服务占用:netstat -an | grep 830
内容的提问来源于stack exchange,提问作者Carlos Castillo
相关产品推荐
相关产品推荐

