连接netcon时引发意外的会话关闭错误

2024-06-08 04:51:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用ncclient连接到netconf。但是当我试图通过python连接时

“ncclient.transport.errors.SessionCloseError:引发意外的会话关闭“错误。下面给出了我正在使用的代码片段

manager.connect('<servername>',22,username='<username>')

在这方面的任何帮助都是值得赞赏的。我可以使用公钥连接到远程服务器,因此我没有在connect中提供passwordk

在netconf服务器日志中,我可以看到拒绝访问错误。(即使我尝试使用username和pwd时也遇到了相同的问题)


Tags: 代码服务器远程connect错误usernamemanagertransport
2条回答

您的机器可能彼此不认识(比如当您通过普通ssh连接并获得“unknown key,really connect(y/n)”时)错误。在这种情况下,默认情况下会话将不连接。要更改此行为,请使用“unknown_host_cb”参数:

def allowUnknownHosts(host,fingerprint):
  return True

self.manager = manager.connect(host=host, port=port, username=user,password=password, unknown_host_cb=allowUnknownHosts)

你没有提供很多信息。在

  1. 您使用的是ncclient的哪个版本?在
  2. 您正在使用哪个版本的Python?在
  3. 您尝试连接到哪个NETCONF实现?这是实际的交换机或路由器,还是类似于运行libnetconf或{}的Linux服务器?在

根据这里的信息,我可以想象出有几件事是错误的:

  • paramiko没有使用正确的密钥来建立SSH传输。在
  • 您尝试使用SSH服务器而不是NETCONF服务器建立NETCONF会话。在

在您的脚本中,使用manager.logging.basicConfig(filename='ncclient.log', level=manager.logging.DEBUG)创建一些日志,然后重新运行您的脚本-您有什么更有用的信息吗?在

这是一个老问题,但我希望我至少能给你指出正确的方向。在

相关问题 更多 >

    热门问题