netgate-urpf API (25.02)

YANG module to fully support the controls of the urpf VPP plugin via TNSR.

Copyright 2024 Rubicon Communications, LLC.

urpf-config

returns netgate.urpf.UrpfConfig

Urpf plugin configuration

Responses

Request samples

package main

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

func main() {

	url := "http://hostname/restconf/data/netgate-urpf:urpf-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-urpf:urpf-config": {
    }
}

creates netgate.urpf.UrpfConfig

Urpf plugin configuration

Request Body schema: application/yang-data+json

netgate.urpf.UrpfConfig to be added to list

Array of objects (netgate.urpf.urpfconfig.UrpfFilter)

Filter instance

Responses

Request samples

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

creates or updates netgate.urpf.UrpfConfig

Urpf plugin configuration

Request Body schema: application/yang-data+json

netgate.urpf.UrpfConfig to be added or updated

object (netgate.urpf.UrpfConfig)

Urpf plugin configuration

Responses

Request samples

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

removes netgate.urpf.UrpfConfig

Urpf plugin configuration

Responses

Request samples

package main

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

func main() {

	url := "http://hostname/restconf/data/netgate-urpf:urpf-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))

}

creates netgate.urpf.urpfconfig.UrpfFilter

Filter instance

Request Body schema: application/yang-data+json

netgate.urpf.urpfconfig.UrpfFilter to be added to list

netgate-urpf:mode
string (netgate.urpf.UrpfMode)
Enum: "loose" "strict"
netgate-urpf:vrf
string

VRF name

netgate-urpf:interface
string

Interface name

netgate-urpf:address-family
string (netgate.common.IpAddressFamily)
Enum: "ipv4" "ipv6"
netgate-urpf:direction
string (netgate.common.TrafficDirectionOneway)
Enum: "in" "out"

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-urpf:mode": "loose",
  • "netgate-urpf:vrf": "string",
  • "netgate-urpf:interface": "string",
  • "netgate-urpf:address-family": "ipv4",
  • "netgate-urpf:direction": "in"
}

returns netgate.urpf.urpfconfig.UrpfFilter

Filter instance

path Parameters
interface
required
string

Id of urpf-filter

address-family
required
string

Id of urpf-filter

direction
required
string

Id of urpf-filter

Responses

Request samples

package main

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

func main() {

	url := "http://hostname/restconf/data/netgate-urpf:urpf-config/urpf-filter=%7Binterface%7D,%7Baddress-family%7D,%7Bdirection%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-urpf:urpf-filter": {
    }
}

creates or updates netgate.urpf.urpfconfig.UrpfFilter

Filter instance

path Parameters
interface
required
string

Id of urpf-filter

address-family
required
string

Id of urpf-filter

direction
required
string

Id of urpf-filter

Request Body schema: application/yang-data+json

netgate.urpf.urpfconfig.UrpfFilter to be added or updated

object (netgate.urpf.urpfconfig.UrpfFilter)

Filter instance

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-urpf:urpf-filter": {
    }
}

removes netgate.urpf.urpfconfig.UrpfFilter

Filter instance

path Parameters
interface
required
string

Id of urpf-filter

address-family
required
string

Id of urpf-filter

direction
required
string

Id of urpf-filter

Responses

Request samples

package main

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

func main() {

	url := "http://hostname/restconf/data/netgate-urpf:urpf-config/urpf-filter=%7Binterface%7D,%7Baddress-family%7D,%7Bdirection%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))

}

urpf-state

returns netgate.urpf.UrpfState

Uprf state.

Responses

Request samples

package main

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

func main() {

	url := "http://hostname/restconf/data/netgate-urpf:urpf-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-urpf:urpf-state": {
    }
}

creates netgate.urpf.UrpfState

Uprf state.

Request Body schema: application/yang-data+json

netgate.urpf.UrpfState to be added to list

Array of objects (netgate.urpf.urpfstate.UrpfFilter)

Responses

Request samples

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

creates or updates netgate.urpf.UrpfState

Uprf state.

Request Body schema: application/yang-data+json

netgate.urpf.UrpfState to be added or updated

object (netgate.urpf.UrpfState)

Uprf state.

Responses

Request samples

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

removes netgate.urpf.UrpfState

Uprf state.

Responses

Request samples

package main

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

func main() {

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

	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.urpf.urpfstate.UrpfFilter

creates netgate.urpf.urpfstate.UrpfFilter

Request Body schema: application/yang-data+json

netgate.urpf.urpfstate.UrpfFilter to be added to list

Array of objects (netgate.urpf.urpfstate.urpffilter.Filter)
netgate-urpf:interface
string

Interface

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-urpf:filter": [
    ],
  • "netgate-urpf:interface": "string"
}

returns netgate.urpf.urpfstate.UrpfFilter

returns netgate.urpf.urpfstate.UrpfFilter

path Parameters
interface
required
string

Id of urpf-filter

Responses

Request samples

package main

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

func main() {

	url := "http://hostname/restconf/data/netgate-urpf:urpf-state/urpf-filter=%7Binterface%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-urpf:urpf-filter": {
    }
}

creates or updates netgate.urpf.urpfstate.UrpfFilter

creates or updates netgate.urpf.urpfstate.UrpfFilter

path Parameters
interface
required
string

Id of urpf-filter

Request Body schema: application/yang-data+json

netgate.urpf.urpfstate.UrpfFilter to be added or updated

object (netgate.urpf.urpfstate.UrpfFilter)

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-urpf:urpf-filter": {
    }
}

removes netgate.urpf.urpfstate.UrpfFilter

removes netgate.urpf.urpfstate.UrpfFilter

path Parameters
interface
required
string

Id of urpf-filter

Responses

Request samples

package main

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

func main() {

	url := "http://hostname/restconf/data/netgate-urpf:urpf-state/urpf-filter=%7Binterface%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))

}

creates netgate.urpf.urpfstate.urpffilter.Filter

creates netgate.urpf.urpfstate.urpffilter.Filter

path Parameters
interface
required
string

Id of urpf-filter

Request Body schema: application/yang-data+json

netgate.urpf.urpfstate.urpffilter.Filter to be added to list

netgate-urpf:mode
string

Loose or Strict

netgate-urpf:vrf
string

VRF name

netgate-urpf:address-family
string

AF

netgate-urpf:direction
string

In or Out

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-urpf:mode": "string",
  • "netgate-urpf:vrf": "string",
  • "netgate-urpf:address-family": "string",
  • "netgate-urpf:direction": "string"
}

returns netgate.urpf.urpfstate.urpffilter.Filter

returns netgate.urpf.urpfstate.urpffilter.Filter

path Parameters
interface
required
string

Id of urpf-filter

address-family
required
string

Id of filter

direction
required
string

Id of filter

Responses

Request samples

package main

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

func main() {

	url := "http://hostname/restconf/data/netgate-urpf:urpf-state/urpf-filter=%7Binterface%7D/filter=%7Baddress-family%7D,%7Bdirection%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-urpf:filter": {
    }
}

creates or updates netgate.urpf.urpfstate.urpffilter.Filter

creates or updates netgate.urpf.urpfstate.urpffilter.Filter

path Parameters
interface
required
string

Id of urpf-filter

address-family
required
string

Id of filter

direction
required
string

Id of filter

Request Body schema: application/yang-data+json

netgate.urpf.urpfstate.urpffilter.Filter to be added or updated

object (netgate.urpf.urpfstate.urpffilter.Filter)

Responses

Request samples

Content type
application/yang-data+json
{
  • "netgate-urpf:filter": {
    }
}

removes netgate.urpf.urpfstate.urpffilter.Filter

removes netgate.urpf.urpfstate.urpffilter.Filter

path Parameters
interface
required
string

Id of urpf-filter

address-family
required
string

Id of filter

direction
required
string

Id of filter

Responses

Request samples

package main

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

func main() {

	url := "http://hostname/restconf/data/netgate-urpf:urpf-state/urpf-filter=%7Binterface%7D/filter=%7Baddress-family%7D,%7Bdirection%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))

}