当前位置: 首页 > 知识库问答 >
问题:

RESTCONF:配置BGP对等体的正确api调用是什么

乌杰
2023-03-14

我正在尝试调出一个BGP会话(linkstate系列,如果重要的话)。遵循本指南https://github.com/opendaylight/docs/blob/master/docs/user-guide/bgpcep-guide/bgp/bgp-user-guide-linkstate-family.rst

当我使用URL/restconf/config/openconfig-network-instance:network-instance/network-instance/global-bgp/openconfig-network-instance:protocols和as body发出请求时

<protocol xmlns="http://openconfig.net/yang/network-instance">
    <name>nl-ams02c-ispbgp01</name>
    <identifier xmlns:x="http://openconfig.net/yang/policy-types">x:BGP</identifier>
    <bgp xmlns="urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions">
        <global>
            <config>
                <router-id>10.20.14.1</router-id>
                <as>xxx</as>
            </config>
            <afi-safis>
                <afi-safi>
                    <afi-safi-name>LINKSTATE</afi-safi-name>
                </afi-safi>
            </afi-safis>
        </global>
    </bgp>
</protocol>

看来家族是添加到BGP扬声器的,我正在检查这个

In [5]: url = "/restconf/operational/bgp-rib:bgp-rib"

In [6]: requests.get('http://{}:{}{}'.format(odl['api']['ipaddr'],odl['api']['port'],url), auth=auth).json()
Out[6]: 
{'bgp-rib': {'rib': [{'id': 'nl-ams02c-ispbgp01',
    'loc-rib': {'tables': [{'afi': 'bgp-linkstate:linkstate-address-family',
       'safi': 'bgp-linkstate:linkstate-subsequent-address-family',
       'bgp-linkstate:linkstate-routes': {},
       'attributes': {'uptodate': True}}, ...

问题1虽然我不知道如何检查和应该在哪里看到用于此BGP会话的本地IP地址(在上面的示例中为10.20.14.1)。HTTP GET请求是什么?

接下来,当我尝试使用URL/restconf/config/openconfig-network-instance:network-instance/network-instance/global-BGP/openconfig-network-instance:protocols/protocol/openconfig-policy-types:BGP/nl-ams02c-ispbgp01/BGP/neighbors和body配置BGP对等体时

<neighbor xmlns="urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions">
    <neighbor-address>10.20.14.0</neighbor-address>
    <afi-safis>
        <afi-safi>
            <afi-safi-name>LINKSTATE</afi-safi-name>
        </afi-safi>
    </afi-safis>
</neighbor>

我得到以下错误:

{'errors': {'error': [{'error-type': 'protocol',
    'error-tag': 'malformed-message',
    'error-message': 'Error parsing input: Child "protocol" was not found in parent schema node "(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=2017-12-07)neighbors"',
    'error-info': 'Child "protocol" was not found in parent schema node "(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=2017-12-07)neighbors"'}]}}

问题2能否请您帮助我,并就正确的HTTP调用提供建议,以配置BGP对等体?

PS.我正在运行OpenDaylight Oxygen-SR2

更新:我发现RESTCONF API Explorer很有帮助,仍然在浏览它…

共有1个答案

白子默
2023-03-14

利用https://wiki.opendaylight.org/view/opendaylight_controller:md-sal:restconf_api_explorer

问题1的答案是:http://127.0.0.1:8181/restconf/config/openconfig-network-instance:network-instance

问题2仍未回答:)

 类似资料:
  • 我将Hazelcast作为缓存服务运行,似乎我可以通过BoringSSL提高性能,这更简单,因为我不需要安装其他软件 阅读他们的文档:https://docs.hazelcast.com/imdg/4.1.2/security/integrating-openssl.html 我知道我只需要两个罐子,但我没有看到任何关于配置设置的提及。我是否只将Java SSL设置用于BasicSSLContex

  • 问题内容: 我最近从Angular转到了ReactJs。我正在使用jQuery进行API调用。我有一个API,该API返回要打印在列表中的随机用户列表。 我不确定如何编写我的API调用。最佳做法是什么? 我尝试了以下操作,但未得到任何输出。如果需要,我愿意实现替代API库。 下面是我的代码: 问题答案: 在这种情况下,您可以在中进行ajax调用,然后进行更新

  • 以下是我构建的带有Spring Data Neo4j skeleton应用程序的PlayFramework: https://github.com/tomasmuller/playframework-neo4j-template 在第一次播放运行期间,一切正常。通过Netty的PlayFramework以开发模式启动。所以我们可以继续编程并点击刷新来查看结果。 但可能有一些与Neo4j事务管理器相

  • 问题内容: 我正在尝试将log4j配置为使用,但我不断收到中继访问被拒绝的错误。在笔记本电脑上直接从共享托管环境执行代码时,出现此错误。 这是相关的配置: 如果改用,则会收到身份验证错误。我的主机位于DreamHost上,因此如果有人使用DreamHost电子邮件帐户设置了log4j,则可获赠积分。 问题答案: 原来我只是把属性都弄错了。应该:

  • 什么是REST API响应结构和布局的最佳实践? Scrath示例: 成功回应: 失败响应:

  • JPA2.1规范的第3.1.1节说: 由接口的方法[例如]引发的运行时异常[例如]而不是,如果持久性上下文连接到当前事务,则将导致该事务标记为回滚。 那么,在不回滚当前事务的情况下,检查任意对象(不知道它是否是实体,不知道它是否在持久性上下文中)是否既是实体又在持久性上下文中的首选方法是什么?