netgate-bfd API (24.06)

This YANG module provides a Netgate-defined data-model for Bidirectional Forwarding Detection (BFD) data.

Copyright 2017-2020 Rubicon Communications, LLC.

bfd-config

returns netgate.bfd.BfdConfig

The bfd-config node contains BFD keys and session.

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-config"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

Response samples

Content type
application/yang-data+json
{
  • "netgate-bfd:bfd-config": {
    }
}

creates netgate.bfd.BfdConfig

The bfd-config node contains BFD keys and session.

Request Body schema: application/yang-data+json

netgate.bfd.BfdConfig to be added to list

object (netgate.bfd.bfdconfig.KeyTable)

This table contains BFD Conf Keys.

object (netgate.bfd.bfdconfig.BfdTable)

Host BFD interface configuration table.

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-bfd:key-table": {
    },
  • "netgate-bfd:bfd-table": {
    }
}

creates or updates netgate.bfd.BfdConfig

The bfd-config node contains BFD keys and session.

Request Body schema: application/yang-data+json

netgate.bfd.BfdConfig to be added or updated

object (netgate.bfd.BfdConfig)

The bfd-config node contains BFD keys and session.

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-bfd:bfd-config": {
    }
}

removes netgate.bfd.BfdConfig

The bfd-config node contains BFD keys and session.

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-config"

	req, _ := http.NewRequest("DELETE", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

returns netgate.bfd.bfdconfig.BfdTable

Host BFD interface configuration table.

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-config/bfd-table"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

Response samples

Content type
application/yang-data+json
{
  • "netgate-bfd:bfd-table": {
    }
}

creates netgate.bfd.bfdconfig.BfdTable

Host BFD interface configuration table.

Request Body schema: application/yang-data+json

netgate.bfd.bfdconfig.BfdTable to be added to list

Array of objects (netgate.bfd.bfdconfig.bfdtable.BfdSession)

Each session has its own unique name.

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-bfd:bfd-session": [
    ]
}

creates or updates netgate.bfd.bfdconfig.BfdTable

Host BFD interface configuration table.

Request Body schema: application/yang-data+json

netgate.bfd.bfdconfig.BfdTable to be added or updated

object (netgate.bfd.bfdconfig.BfdTable)

Host BFD interface configuration table.

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-bfd:bfd-table": {
    }
}

removes netgate.bfd.bfdconfig.BfdTable

Host BFD interface configuration table.

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-config/bfd-table"

	req, _ := http.NewRequest("DELETE", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

creates netgate.bfd.bfdconfig.bfdtable.BfdSession

Each session has its own unique name.

Request Body schema: application/yang-data+json

netgate.bfd.bfdconfig.bfdtable.BfdSession to be added to list

netgate-bfd:detect-multiplier
integer <int32>

The desired Detection Time multiplier for BFD Control packets on the local system. This variable MUST be a nonzero integer. This value is (roughly speaking, due to jitter) the number of packets that have to be missed in a row to declare the session to be down.

netgate-bfd:peer-ip-address
string

The session's peer IPv4 or IPv6 address.

netgate-bfd:enable
boolean
Default: true

If true, BFD is enabled on this interface. This is defaulted to true because when VPP creates a session, this is how it is created.

netgate-bfd:local-ip-address
string

The session's local IPv4 or IPv6 address.

netgate-bfd:name
string

This is the name of the BFD session.

netgate-bfd:required-min-rx
integer <int64>

This is the minimum interval, in microseconds, between received BFD Control packets that this system is capable of supporting, less any jitter applied by the sender. If this value is zero, the transmitting system does not want the remote system to send any periodic BFD Control packets.

netgate-bfd:desired-min-tx
integer <int64>

This is the minimum interval, in microseconds, that the local system would like to use when transmitting BFD Control packets, less any jitter applied. The value zero is reserved.

netgate-bfd:delayed
boolean

If true, authentication begins when a packet is received from the peer.

netgate-bfd:bfd-key-id
integer <int64>

The BFD key.

netgate-bfd:conf-key-id
integer <int64>

The conf authentication key id.

netgate-bfd:interface
string

The session's interface name.

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-bfd:detect-multiplier": 0,
  • "netgate-bfd:peer-ip-address": "string",
  • "netgate-bfd:enable": true,
  • "netgate-bfd:local-ip-address": "string",
  • "netgate-bfd:name": "string",
  • "netgate-bfd:required-min-rx": 0,
  • "netgate-bfd:desired-min-tx": 0,
  • "netgate-bfd:delayed": true,
  • "netgate-bfd:bfd-key-id": 0,
  • "netgate-bfd:conf-key-id": 0,
  • "netgate-bfd:interface": "string"
}

returns netgate.bfd.bfdconfig.bfdtable.BfdSession

Each session has its own unique name.

path Parameters
name
required
string

Id of bfd-session

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-config/bfd-table/bfd-session=%7Bname%7D"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

Response samples

Content type
application/yang-data+json
{
  • "netgate-bfd:bfd-session": {
    }
}

creates or updates netgate.bfd.bfdconfig.bfdtable.BfdSession

Each session has its own unique name.

path Parameters
name
required
string

Id of bfd-session

Request Body schema: application/yang-data+json

netgate.bfd.bfdconfig.bfdtable.BfdSession to be added or updated

object (netgate.bfd.bfdconfig.bfdtable.BfdSession)

Each session has its own unique name.

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-bfd:bfd-session": {
    }
}

removes netgate.bfd.bfdconfig.bfdtable.BfdSession

Each session has its own unique name.

path Parameters
name
required
string

Id of bfd-session

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-config/bfd-table/bfd-session=%7Bname%7D"

	req, _ := http.NewRequest("DELETE", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

returns netgate.bfd.bfdconfig.KeyTable

This table contains BFD Conf Keys.

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-config/key-table"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

Response samples

Content type
application/yang-data+json
{
  • "netgate-bfd:key-table": {
    }
}

creates netgate.bfd.bfdconfig.KeyTable

This table contains BFD Conf Keys.

Request Body schema: application/yang-data+json

netgate.bfd.bfdconfig.KeyTable to be added to list

Array of objects (netgate.bfd.bfdconfig.keytable.KeyEntry)

BFD Conf Key Entry.

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-bfd:key-entry": [
    ]
}

creates or updates netgate.bfd.bfdconfig.KeyTable

This table contains BFD Conf Keys.

Request Body schema: application/yang-data+json

netgate.bfd.bfdconfig.KeyTable to be added or updated

object (netgate.bfd.bfdconfig.KeyTable)

This table contains BFD Conf Keys.

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-bfd:key-table": {
    }
}

removes netgate.bfd.bfdconfig.KeyTable

This table contains BFD Conf Keys.

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-config/key-table"

	req, _ := http.NewRequest("DELETE", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

creates netgate.bfd.bfdconfig.keytable.KeyEntry

BFD Conf Key Entry.

Request Body schema: application/yang-data+json

netgate.bfd.bfdconfig.keytable.KeyEntry to be added to list

netgate-bfd:type
string (netgate.bfd.BfdAuthKeyType)
Enum: "keyed-sha1" "meticulous-keyed-sha1"
netgate-bfd:conf-key-id
integer <int64>

This is the unique integer Id of the BFD key.

netgate-bfd:secret
string

This is the hex encoded secret with maximum length 20 bytes.

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-bfd:type": "keyed-sha1",
  • "netgate-bfd:conf-key-id": 0,
  • "netgate-bfd:secret": "string"
}

returns netgate.bfd.bfdconfig.keytable.KeyEntry

BFD Conf Key Entry.

path Parameters
conf-key-id
required
integer <int64>

Id of key-entry

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-config/key-table/key-entry=%7Bconf-key-id%7D"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

Response samples

Content type
application/yang-data+json
{
  • "netgate-bfd:key-entry": {
    }
}

creates or updates netgate.bfd.bfdconfig.keytable.KeyEntry

BFD Conf Key Entry.

path Parameters
conf-key-id
required
integer <int64>

Id of key-entry

Request Body schema: application/yang-data+json

netgate.bfd.bfdconfig.keytable.KeyEntry to be added or updated

object (netgate.bfd.bfdconfig.keytable.KeyEntry)

BFD Conf Key Entry.

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-bfd:key-entry": {
    }
}

removes netgate.bfd.bfdconfig.keytable.KeyEntry

BFD Conf Key Entry.

path Parameters
conf-key-id
required
integer <int64>

Id of key-entry

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-config/key-table/key-entry=%7Bconf-key-id%7D"

	req, _ := http.NewRequest("DELETE", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

bfd-state

returns netgate.bfd.BfdState

The bfd-config node contains BFD keys and session.

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-state"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

Response samples

Content type
application/yang-data+json
{
  • "netgate-bfd:bfd-state": {
    }
}

returns netgate.bfd.bfdstate.BfdTable

Host BFD interface configuration table.

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-state/bfd-table"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

Response samples

Content type
application/yang-data+json
{
  • "netgate-bfd:bfd-table": {
    }
}

returns netgate.bfd.bfdstate.bfdtable.BfdSession

Each session has its own unique name.

path Parameters
session-number
required
integer <int64>

Id of bfd-session

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-state/bfd-table/bfd-session=%7Bsession-number%7D"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

Response samples

Content type
application/yang-data+json
{
  • "netgate-bfd:bfd-session": {
    }
}

returns netgate.bfd.bfdstate.KeyTable

This table contains BFD Conf Keys.

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-state/key-table"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

Response samples

Content type
application/yang-data+json
{
  • "netgate-bfd:key-table": {
    }
}

returns netgate.bfd.bfdstate.keytable.KeyEntry

BFD Conf Key Entry.

path Parameters
conf-key-id
required
integer <int64>

Id of key-entry

Responses

Request samples

package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "http://hostname/restconf/data/netgate-bfd:bfd-state/key-table/key-entry=%7Bconf-key-id%7D"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := ioutil.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}

Response samples

Content type
application/yang-data+json
{
  • "netgate-bfd:key-entry": {
    }
}