netconfcentral logo

ietf-ipv4-unicast-routing

HTML

ietf-ipv4-unicast-routing@2017-12-11



  module ietf-ipv4-unicast-routing {

    yang-version 1.1;

    namespace
      "urn:ietf:params:xml:ns:yang:ietf-ipv4-unicast-routing";

    prefix v4ur;

    import ietf-routing {
      prefix rt;
    }
    import ietf-inet-types {
      prefix inet;
    }

    organization
      "IETF NETMOD - Networking Modeling Working Group";

    contact
      "WG Web:   <http://tools.ietf.org/wg/netmod/>
WG List:  <mailto:rtgwg@ietf.org>

Editor:   Ladislav Lhotka
	  <mailto:lhotka@nic.cz>
	  Acee Lindem
	  <mailto:acee@cisco.com>
	  Yingzhen Qu
	  <mailto:yingzhen.qu@huawei.com>";

    description
      "This YANG module augments the 'ietf-routing' module with basic
configuration and state data for IPv4 unicast routing.

Copyright (c) 2017 IETF Trust and the persons
identified as authors of the code.  All rights reserved.

Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject
to the license terms contained in, the Simplified BSD License
set forth in Section 4.c of the IETF Trust's Legal Provisions
Relating to IETF Documents
(http://trustee.ietf.org/license-info).

This version of this YANG module is part of RFC XXXX; see
the RFC itself for full legal notices.";

    reference
      "RFC XXXX";


    revision "2017-12-11" {
      description
        "Network Managment Datastore Architecture (NDMA) Revision";
      reference
        "RFC XXXX: A YANG Data Model for Routing Management
        (NDMA Version)";

    }

    revision "2016-11-04" {
      description "Initial revision.";
      reference
        "RFC 8022: A YANG Data Model for Routing Management";

    }


    identity ipv4-unicast {
      base rt:ipv4;
      description
        "This identity represents the IPv4 unicast address family.";
    }

    augment /rt:routing/rt:ribs/rt:rib/rt:routes/rt:route {
      when
        "derived-from-or-self(../../rt:address-family, 'v4ur:ipv4-unicast')" {
        description
          "This augment is valid only for IPv4 unicast.";
      }
      description
        "This leaf augments an IPv4 unicast route.";
      leaf destination-prefix {
        type inet:ipv4-prefix;
        description
          "IPv4 destination prefix.";
      }
    }

    augment /rt:routing/rt:ribs/rt:rib/rt:routes/rt:route/rt:next-hop/rt:next-hop-options/rt:simple-next-hop {
      when
        "derived-from-or-self(../../../rt:address-family, 'v4ur:ipv4-unicast')" {
        description
          "This augment is valid only for IPv4 unicast.";
      }
      description
        "Augment 'simple-next-hop' case in IPv4 unicast routes.";
      leaf next-hop-address {
        type inet:ipv4-address;
        description
          "IPv4 address of the next hop.";
      }
    }

    augment /rt:routing/rt:ribs/rt:rib/rt:routes/rt:route/rt:next-hop/rt:next-hop-options/rt:next-hop-list/rt:next-hop-list/rt:next-hop {
      when
        "derived-from-or-self(../../../../../rt:address-family, 'v4ur:ipv4-unicast')" {
        description
          "This augment is valid only for IPv4 unicast.";
      }
      description
        "This leaf augments the 'next-hop-list' case of IPv4 unicast
routes.";
      leaf address {
        type inet:ipv4-address;
        description
          "IPv4 address of the next-hop.";
      }
    }

    augment /rt:routing/rt:ribs/rt:rib/rt:active-route/rt:input {
      when
        "derived-from-or-self(../rt:address-family, 'v4ur:ipv4-unicast')" {
        description
          "This augment is valid only for IPv4 unicast RIBs.";
      }
      description
        "This augment adds the input parameter of the 'active-route'
action.";
      leaf destination-address {
        type inet:ipv4-address;
        description
          "IPv4 destination address.";
      }
    }

    augment /rt:routing/rt:ribs/rt:rib/rt:active-route/rt:output/rt:route {
      when
        "derived-from-or-self(../../rt:address-family, 'v4ur:ipv4-unicast')" {
        description
          "This augment is valid only for IPv4 unicast.";
      }
      description
        "This augment adds the destination prefix to the reply of the
'active-route' action.";
      leaf destination-prefix {
        type inet:ipv4-prefix;
        description
          "IPv4 destination prefix.";
      }
    }

    augment /rt:routing/rt:ribs/rt:rib/rt:active-route/rt:output/rt:route/rt:next-hop/rt:next-hop-options/rt:simple-next-hop {
      when
        "derived-from-or-self(../../../rt:address-family, 'v4ur:ipv4-unicast')" {
        description
          "This augment is valid only for IPv4 unicast.";
      }
      description
        "Augment 'simple-next-hop' case in the reply to the
'active-route' action.";
      leaf next-hop-address {
        type inet:ipv4-address;
        description
          "IPv4 address of the next hop.";
      }
    }

    augment /rt:routing/rt:ribs/rt:rib/rt:active-route/rt:output/rt:route/rt:next-hop/rt:next-hop-options/rt:next-hop-list/rt:next-hop-list/rt:next-hop {
      when
        "derived-from-or-self(../../../../../rt:address-family, 'v4ur:ipv4-unicast')" {
        description
          "This augment is valid only for IPv4 unicast.";
      }
      description
        "Augment 'next-hop-list' case in the reply to the
'active-route' action.";
      leaf next-hop-address {
        type inet:ipv4-address;
        description
          "IPv4 address of the next hop.";
      }
    }

    augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/rt:static-routes {
      description
        "This augment defines the configuration of the 'static'
pseudo-protocol with data specific to IPv4 unicast.";
      container ipv4 {
        description
          "Configuration of a 'static' pseudo-protocol instance
consists of a list of routes.";
        list route {
          key "destination-prefix";
          description
            "A list of static routes.";
          leaf destination-prefix {
            type inet:ipv4-prefix;
            mandatory true;
            description
              "IPv4 destination prefix.";
          }

          leaf description {
            type string;
            description
              "Textual description of the route.";
          }

          container next-hop {
            description
              "Configuration of next-hop.";
            uses rt:next-hop-content {
              augment next-hop-options/simple-next-hop {
                description
                  "Augment 'simple-next-hop' case in IPv4 static
routes.";
                leaf next-hop-address {
                  type inet:ipv4-address;
                  description
                    "IPv4 address of the next hop.";
                }
              }

              augment next-hop-options/next-hop-list/next-hop-list/next-hop {
                description
                  "Augment 'next-hop-list' case in IPv4 static
routes.";
                leaf next-hop-address {
                  type inet:ipv4-address;
                  description
                    "IPv4 address of the next hop.";
                }
              }
            }
          }  // container next-hop
        }  // list route
      }  // container ipv4
    }

    augment 

    augment 

    augment 

    augment 

    augment 

    augment 

    augment 
  }  // module ietf-ipv4-unicast-routing

Summary

  
  
Organization IETF NETMOD - Networking Modeling Working Group
  
Module ietf-ipv4-unicast-routing
Version 2017-12-11
File ietf-ipv4-unicast-routing@2017-12-11.yang
  
Prefix v4ur
Namespace urn:ietf:params:xml:ns:yang:ietf-ipv4-unicast-routing
Reference
RFC XXXX
  
Cooked /cookedmodules/ietf-ipv4-unicast-routing/2017-12-11
YANG /src/ietf-ipv4-unicast-routing@2017-12-11.yang
XSD /xsd/ietf-ipv4-unicast-routing@2017-12-11.xsd
  
Abstract This YANG module augments the 'ietf-routing' module with basic configuration and state data for IPv4 unicast routing. Copyright...
  
Contact
WG Web:   <http://tools.ietf.org/wg/netmod/>
WG List:  <mailto:rtgwg@ietf.org>

Editor:   Ladislav Lhotka
	  <mailto:lhotka@nic.cz>
	  Acee Lindem
	  <mailto:acee@cisco.com>
	  Yingzhen Qu
	  <mailto:yingzhen.qu@huawei.com>

Description

 
This YANG module augments the 'ietf-routing' module with basic
configuration and state data for IPv4 unicast routing.

Copyright (c) 2017 IETF Trust and the persons
identified as authors of the code.  All rights reserved.

Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject
to the license terms contained in, the Simplified BSD License
set forth in Section 4.c of the IETF Trust's Legal Provisions
Relating to IETF Documents
(http://trustee.ietf.org/license-info).

This version of this YANG module is part of RFC XXXX; see
the RFC itself for full legal notices.