Python中文
首页
教程
问答
标签
搜索
登录
注册
从Python脚本终止Netconf连接
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>在返回我传递给它的XML-rpc请求之前,Python脚本正在终止netconf会话。当我直接连接到路由器的Netconf会话时,xmlrpc就可以工作了。有人能帮我弄清楚吗?我不想使用NCCLIENT库,我宁愿直接打开Netconf API的套接字。在</p> <p>路由器=5.3.4 XRv Python=2.7</p> <p><strong>Python代码:</strong></p> <pre><code>import paramiko import socket import time import sys ROUTER_IP = 'x.x.x.x' USERNAME = 'adrian' PASSWORD = 'xxxxxx' ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy( paramiko.AutoAddPolicy()) Send_XML = """ <?xml version="1.0" encoding="UTF-8"?> <rpc message-id="106" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> <get-config> <source> <running/> </source> <filter> <Configuration> <InterfaceConfigurationTable/> </Configuration> </filter> </get-config> </rpc> ]]>]]>""" socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) socket.connect((ROUTER_IP, 830)) trans = paramiko.Transport(socket) trans.connect(username=USERNAME, password=PASSWORD) # CREATE CHANNEL FOR DATA COMM ch = trans.open_session() name = ch.set_name('netconf') # Invoke NETCONF ch.invoke_subsystem('netconf echo format') # SEND COMMAND ch.send(Send_XML) # Recieve data returned data = ch.recv(2048) while data: data = ch.recv(1024) print data, if data.find('</rpc-reply>') == 0: # We have reached the end of reply print "END!!" break ch.close() trans.close() socket.close() </code></pre> <p><strong>输出</strong></p> ^{pr2}$ <p><strong>直接连接</strong></p> <p>ssh x.x.x.x-p 830 netconf echo格式</p> <pre><code><?xml version="1.0" encoding="UTF-8"?> <rpc message-id="106" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> <get-config> <source> <running/> </source> <filter> <Configuration> <InterfaceConfigurationTable/> </Configuration> </filter> </get-config> </rpc> ]]>]]> <?xml version="1.0" encoding="UTF-8"?> <rpc-reply message-id="106" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> <data> <Configuration> <InterfaceConfigurationTable MajorVersion="5" MinorVersion="4"> <InterfaceConfiguration> <Naming> . . . </InterfaceConfigurationTable> </Configuration> </data> </rpc-reply> ]]>]]> </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>ncclinetpython库可以为您提供更高级别的抽象请参见<a href="https://pypi.python.org/pypi/ncclient" rel="nofollow noreferrer">https://pypi.python.org/pypi/ncclient</a></p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
我想从用户inpu创建一个类的实例
5 回答
我想从用户导入值,为此
9 回答
我想从用户那里得到一个整数输入,然后让for循环遍历该数字,然后调用一个函数多次
5 回答
我想从用户那里收到一个列表,并在其中执行一些步骤,然后在步骤完成后将其打印回来,但它没有按照我想要的方式工作
4 回答
我想从用户那里获取输入,并将值传递给(average=dict[x]/6),然后在那里获取resu
9 回答
我想从第一个列表中展示第一个词,然后从第二个列表中展示十个词,以此类推- Python
3 回答
我想从第一个空lin开始解析文本文件
8 回答
我想从简历、简历中提取特定部分
4 回答
我想从给定字典(python)的字符串中删除\u00a9、\u201d和类似的字符。
10 回答
我想从给定的网站Lin下载许多文件扩展名相同的Wget或Python文件
4 回答
我想从网上搜集一些关于抵押贷款的数据
7 回答
我想从网站上删除电子邮件地址
10 回答
我想从网站上读取数据该网站包含可下载的文件,然后我想用python脚本把它发送给oracle如何?
4 回答
我想从网站中提取数据,然后将其显示在我的网页上
9 回答
我想从网页上提取统计数据。
1 回答
我想从网页上解析首都城市,并在用户输入国家时在终端上打印它们
7 回答
我想从色彩图中删除前n个颜色,而不丢失原始颜色数
8 回答
我想从课堂上打印字典里的键
7 回答
我想从费用表中获取学生上次支付的费用,其中学生id=id
7 回答
我想从较低的顺序对多重列表进行排序,但我无法在一行中生成结果
10 回答