CCNP Routing and Switching Portable Command Guide: Configuration of Redistribution
Date: Jan 21, 2015
This chapter provides information about the following redistribution topics:
- Defining seed and default metrics
- Redistributing connected networks
- Redistributing static routes
- Redistributing subnets into OSPF
- Assigning E1 or E2 routes in OSPF
- Redistributing OSPF internal and external routes
- Configuration example: route redistribution for IPv4
- Configuration example: route redistribution for IPv6
- Verifying route redistribution
Route filtering using the distribute-list command
- Configuration example: inbound and outbound distribute list route filters
- Configuration example: controlling redistribution with outbound distribute lists
- Verifying route filters
Route filtering using prefix lists
- Configuration example: using a distribute list that references a prefix list to control redistribution
- Verifying prefix lists
Using route maps with route redistribution
- Configuration example: route maps
- Manipulating redistribution using route tagging
- Changing administrative distance for internal and external routes
- Passive interfaces
Defining Seed and Default Metrics
Router(config)#router eigrp 100 |
Starts the EIGRP routing process. |
Router(config-router)#network 172.16.0.0 |
Specifies which network to advertise in EIGRP. |
Router(config-router)#redistribute rip |
Redistributes routes learned from RIP into EIGRP. |
Router(config-router)#default-metric 1000 100 250 1 1500 Or |
The metrics assigned to these learned routes will be calculated using the following components: |
Router(config-router)#redistribute rip metric 1000 100 250 1 1500 |
1000 = Bandwidth in Kbps |
100 = Delay in tens of microseconds |
|
255 = Reliability out of 255 |
|
1 = Load out of 255 |
|
1500 = Maximum transmission unit (MTU) size |
|
The metric keyword in the second option assigns a starting EIGRP metric that is calculated using the following components: 1000, 100, 255, 1 1500. |
Redistributing Connected Networks
Router(config)#router ospf 1 |
Starts the OSPF routing process. |
Router(config-router)#redistribute connected |
Redistributes all directly connected networks. |
NOTE: It is not necessary to redistribute networks that are already configured under the routing protocol. |
|
NOTE: The connected keyword refers to routes that are established automatically by virtue of having enabled IP on an interface. For routing protocols such as OSPF, Intermediate System-to-Intermediate System (IS-IS), and EIGRP, these routes are redistributed as external to the autonomous system. |
|
Router(config-router)#redistribute connected metric 50 |
Redistributes all directly connected networks and assigns them a starting metric of 50. |
NOTE: The redistribute connected command is not affected by the default-metric command. |
Redistributing Static Routes
Router(config)#ip route 10.1.1.0 255.255.255.0 serial 0/0/0 |
Creates a static route for network 10.1.1.0/24 exiting out of interface Serial 0/0/0 |
Router(config)#router eigrp 10 |
Starts the EIGRP routing process |
Router(config-router)#redistribute static |
Redistributes static routes on this router into the EIGRP routing process |
Redistributing Subnets into OSPF
Router(config)#router ospf 1 |
Starts the OSPF routing process. |
Router(config-router)#redistribute eigrp 10 metric 100 subnets |
Redistributes routes learned from EIGRP autonomous system 10. A metric of 100 is assigned to all routes. Subnets will also be redistributed. |
NOTE: Without the subnets keyword, no subnets will be redistributed into the OSPF domain. (Only routes that are in the routing table with the default classful mask will be redistributed.) |
Assigning E1 or E2 Routes in OSPF
Router(config)#router ospf 1 |
Starts the OSPF routing process. |
Router(config-router)#redistribute eigrp 1 metric-type 1 |
Redistributes routes learned from EIGRP autonomous system 1. Routes will be advertised as E1 routes. |
NOTE: If the metric-type argument is not used, routes will be advertised by default in OSPF as E2 routes. E2 routes have a default fixed cost of 20 associated with them, but this value can be changed with the metric keyword. The metric will not change as the route is propagated throughout the OSPF area. E1 routes will have internal area costs added to the seed metric. |
Redistributing OSPF Internal and External Routes
Router(config)#router eigrp 10 |
Starts the EIGRP routing process for autonomous system 10. |
Router(config-router)#redistribute ospf 1 match internal external 1 external 2 |
Redistributes routes learned from OSPF process ID 1. The keywords match internal external 1 and external 2 instruct EIGRP to only redistribute internal, external type 1 and type 2 OSPF routes. |
NOTE: The default behavior when redistributing OSPF routes is to redistribute all routes—internal, external 1, and external 2. The keywords match internal external 1 and external 2 are required only if router behavior is to be modified. |
Configuration Example: Route Redistribution for IPv4
Figure 4-3 shows the network topology for the configuration that follows, which demonstrates how to configure single point two-way basic redistribution between EIGRP and OSPF for IPv4, using the commands covered in this chapter. For this configuration example, assume that EIGRP and OSPF routing has been configured correctly on all four routers.
Figure 4-3 Network Topology for IPv4 Route Redistribution
MONTREAL(config)#router eigrp 10 |
Enters EIGRP configuration mode. |
MONTREAL(config-router)#redistribute ospf 1 metric 1500 10 255 1 1500 |
Redistributes routes from OSPF process ID 1 into EIGRP AS 10 and assigns a seed metric to these routes. |
MONTREAL(config-router)#exit |
Returns to global configuration mode. |
MONTREAL(config)#router ospf 1 |
Enters OSPF configuration mode. |
MONTREAL(config-router)#redistribute eigrp 10 subnets |
Redistributes classless routes from EIGRP autonomous system 10 into OSPF process ID 1 as external type 2 (E2) with a metric of 20, which is fixed and does not change across the OSPF domain. |
NOTE: Omitting the subnets key-word is a common configuration error. Without this keyword, only networks in the routing table with a classful mask will be redistributed. Subnets will not be redistributed, and subnets will not be automatically summarized and redistributed. |
|
MONTREAL(config-router)#redistribute eigrp 10 metric-type 1 subnets |
Redistributes classless routes from EIGRP autonomous system 10 into OSPF process ID 1 as external type 1 (E1). Type 1 external routes calculate the cost by adding the external cost (20) to the internal cost of each link that the packet crosses. |
Configuration Example: Route Redistribution for IPv6
Figure 4-4 shows the network topology for the configuration that follows, which demonstrates how to configure single point two-way basic redistribution between EIGRP and OSPF for IPv6, using the commands covered in this chapter. For this configuration example, assume that EIGRP and OSPF routing for IPv6 has been configured correctly on all four routers.
Figure 4-4 Network Topology for IPv6 Route Redistribution
MONTREAL(config)#ipv6 router eigrp 10 |
Enters IPv6 EIGRP configuration mode. |
MONTREAL(config-router)#redistribute ospf 1 metric 1500 10 255 1 1500 include-connected |
Redistributes IPv6 routes from OSPF process ID 1 into EIGRP autonomous system 10 and assigns a seed metric to these routes. |
NOTE: With the include-connected command, you instruct the target rout-ing protocol to redistribute the routes that are learned by the source protocol and also the connected interfaces if the source routing protocol is running on them. |
|
MONTREAL(config-router)#exit |
Returns to global configuration mode. |
MONTREAL(config)#ipv6 router ospf 1 |
Enters IPv6 OSPF configuration mode. |
MONTREAL(config-router)#redistribute eigrp 10 include-connected |
Redistributes IPv6 routes from EIGRP autonomous system 10 into OSPF process ID 1 as external type 2 (E2) with a metric of 20, which is fixed and does not change across the OSPF domain. |
MONTREAL(config-router)#redistribute eigrp 10 metric-type 1 include-connected |
Redistributes IPv6 routes from EIGRP autonomous system 10 into OSPF process ID 1 as external type 1 (E1). Type 1 external routes calculate the cost by adding the external cost (20) to the internal cost of each link that the packet crosses. |
NOTE: The subnets keyword does not exist in OSPFv3 redistribution configuration. |
Verifying Route Redistribution
Router#show ip route Router#show ipv6 route |
Displays the current state of the routing table |
Router#show ip eigrp topology Router#show ipv6 eigrp topology |
Displays the EIGRP topology table |
Router#show ip protocols Router#show ipv6 protocols |
Displays parameters and the current state of any active routing process |
Router#show ip rip database Router#show ipv6 rip database |
Displays summary address entries in the RIP routing database |
Router#show ip ospf database Router#show ipv6 ospf database |
Displays the link-state advertisement (LSA) types within the link-state database (LSDB) |
Route Filtering Using the distribute-list Command
Router(config)#router eigrp 10 |
Starts the EIGRP routing process for autonomous system 10 |
Router(config-router)#distribute-list 1 in |
Creates an incoming global distribute list that refers to access control list (ACL) 1 |
Router(config-router)#distribute-list 2 out |
Creates an outgoing global distribute list that refers to ACL 2 |
Router(config-router)#distribute-list 3 in fastethernet0/0 |
Creates an incoming distribute list for interface FastEthernet0/0 and refers to ACL 3 |
Router(config-router)#distribute-list 4 out serial0/0/0 |
Creates an outgoing distribute list for interface Serial0/0/0 and refers to ACL 4 |
Router(config-router)#distribute-list 5 out ospf 1 |
Filters updates advertised from OSPF process ID 1 into EIGRP autonomous system 10 according to ACL 5 |
Configuration Example: Inbound and Outbound Distribute List Route Filters
Figure 4-5 shows the network topology for the configuration that follows, which demonstrates how to configure inbound and outbound route filters to control routing updates using the commands covered in this chapter. Assume that all basic configurations and EIGRP routing have been configured correctly.
Figure 4-5 Network Topology for Inbound and Outbound Distribute List Route Filters
The first objective is to prevent router AYLMER from learning the 10.0.0.0/8 network using an outbound distribute list on router HULL.
HULL(config)#access-list 10 deny 10.0.0.0 0.255.255.255 |
Creates a standard ACL number 10 and explicitly denies the 10.0.0.0/8 network |
HULL(config)#access-list 10 permit any |
Adds a second line to ACL 10 which permits all other networks |
HULL(config)#router eigrp 1 |
Enters EIGRP autonomous system 1 routing process |
HULL(config-router)#distribute-list 10 out Or |
Creates an outbound global distribute list that refers to ACL 10 |
HULL(config-router)#distribute-list 10 out serial0/0/0 |
Creates an outgoing distribute list for interface Serial0/0/0 that refers to ACL 10 |
The second objective is to prevent router OTTAWA from learning the 192.168.6.0/24 network using an inbound distribute list on router OTTAWA.
OTTAWA(config)#access-list 20 deny 192.168.6.0 0.0.0.255 | Creates a standard ACL number 20 and explicitly denies the 192.168.6.0/24 network |
OTTAWA(config)#access-list 20 permit any |
Adds a second line to ACL 20 which permits all other networks |
OTTAWA (config)#router eigrp 1 |
Enters EIGRP autonomous system 1 routing process |
OTTAWA(config-router)#distribute-list 20 in Or |
Creates an inbound global distribute list that refers to ACL 20 |
OTTAWA(config-router)#distribute-list 20 in serial0/0/0 |
Creates an inbound distribute list for interface Serial0/0/0 that refers to ACL 20 |
Configuration Example: Controlling Redistribution with Outbound Distribute Lists
Figure 4-6 shows the network topology for the configuration that follows, which demonstrates how to control redistribution with an outbound distribute list using the commands covered in this chapter. Assume that all basic configurations and EIGRP and OSPF routing have been configured correctly.
Figure 4-6 Network Topology for Controlling Redistribution with Outbound Distribute Lists
The objective is to prevent networks 172.16.3.0/24 and 172.16.4.0/24 from being redistributed into the OSPF domain.
HULL(config)#access-list 30 permit 172.16.1.0 0.0.0.255 |
Creates a standard ACL number 30 and explicitly permits the 172.16.1.0/24 network. |
HULL (config)#access-list 30 permit 172.16.2.0 0.0.0.255 |
Adds a second line to ACL 30 that explicitly permits the 172.16.2.0/24 network. |
HULL(config)#router ospf 1 |
Enters OSPF process ID 1 routing process. |
HULL(config-router)#redistribute eigrp 10 subnets |
Redistributes all EIGRP networks into OSPF. |
HULL(config-router)#distribute-list 30 out eigrp 10 |
Creates an outbound distribute list to filter routes being redistributed from EIGRP into OSPF. |
NOTE: The implicit “deny any” state-ment at the end of the access list pre-vents routing updates about any other network from being advertised. As a result, networks 172.16.3.0/24 and 172.16.4.0/24 will not be redistributed into OSPF. |
Verifying Route Filters
Router#show ip protocols |
Displays the parameters and current state of active routing protocols |
Routing Protocol is "eigrp 10" Outgoing update filter list for all interfaces is 2 Redistributed ospf 1 filtered by 5 Serial 0/0/0 filtered by 4 Incoming update filter list for all interfaces is 1 FastEthernet0/0 filtered by 3
The command distribute-list out works only on the routes being redistributed by the ASBR into OSPF. It can be applied to external type 2 and external type 1 routes but not to intra-area and interarea routes.
Route Filtering Using Prefix Lists
The general syntax for configuring a prefix list is as follows:
Router(config)#ip prefix-list list-name [seq seq-value] deny | permit network/len [ge ge-value] [le le-value]
The table that follows describes the parameters for this command.
Parameter |
Description |
list-name |
The name of the prefix list |
seq |
(Optional) Applies a sequence number to the entry being created or deleted |
seq-value |
(Optional) Specifies the sequence number |
deny |
Denies access to matching conditions |
permit |
Permits access for matching conditions |
network/len |
(Mandatory) The network number and length (in bits) of the netmask |
ge |
(Optional) Applies ge-value to the range specified |
ge-value |
(Optional) Specifies the lesser value of a range (the “from” portion of the range description) |
le |
(Optional) Applies le-value to the range specified |
le-value |
(Optional) Specifies the greater value of a range (the “to” portion of the range description) |
A router tests for prefix list matches from the lowest sequence number to the highest.
By numbering your prefix-list statements, you can add new entries at any point in the list.
The following examples show how you can use the prefix-list command to filter networks using some of the more commonly used options.
Router(config)#ip prefix-list ROSE permit 192.0.0.0/8 le 24 |
Creates a prefix list that will accept a netmask of up to 24 bits (le meaning less than or equal to) in routes with the prefix 192.0.0.0/8. Because no sequence number is identified, the default number of 5 is applied. |
Router(config)#ip prefix-list ROSE deny 192.0.0.0/8 ge 25 |
Creates a prefix list that will deny routes with a netmask of 25 bits or greater (ge meaning greater than or equal to) in routes with the prefix 192.0.0.0/8. Because no sequence number is identified, the number 10 is applied—an increment of 5 over the previous statement. |
NOTE: This configuration will per-mit routes such as 192.2.0.0/16 or 192.2.20.0/24, but will deny a more spe-cific subnet such as 192.168.10.128/25. |
|
Router(config)#ip prefix-list TOWER permit 10.0.0.0/8 ge 16 le 24 |
Creates a prefix list that permits all prefixes in the 10.0.0.0/8 address space that have a netmask of between 16 and 24 bits (greater than or equal to 16 bits, and less than or equal to 24 bits). |
Router(config)#ip prefix-list TEST seq 5 permit 0.0.0.0/0 |
Creates a prefix list and assigns a sequence number of 5 to a statement which permits only the default route 0.0.0.0/0. |
Router(config)#ip prefix-list TEST seq 10 permit 0.0.0.0/0 ge 30 le 30 |
Creates a prefix list and assigns a sequence number of 10 to a statement that permits any prefix with a netmask of exactly 30 bits. |
Router(config)#ip prefix-list TEST seq 15 permit 0.0.0.0/0 le 32 |
Creates a prefix list and assigns a sequence number of 15 to a statement that permits any address or subnet (permit any). |
Router(config)#no ip prefix-list TEST seq 10 |
Removes sequence number 10 from the prefix list. |
Configuration Example: Using a Distribute List That References a Prefix List to Control Redistribution
Figure 4-7 shows the network topology for the configuration that follows, which demonstrates how to control redistribution with a prefix list using the commands covered in this chapter. Assume that all basic configurations and EIGRP and OSPF routing have been configured correctly.
Figure 4-7 Network Topology for Distribute List Configuration with Prefix Lists
The objective is to prevent networks 172.16.3.0/24 and 172.16.4.0/24 from being redistributed into the OSPF domain.
HULL(config)#ip prefix-list FILTER seq 5 permit 172.16.1.0/24 |
Creates a prefix list called FILTER with a first sequence number of 5 that explicitly permits the 172.16.1.0/24 network. |
HULL (config)#ip prefix-list FILTER seq 10 permit 172.16.2.0/24 |
Adds a second line to the FILTER prefix list that explicitly permits the 172.16.2.0/24 network. |
HULL(config)#router ospf 1 |
Enters OSPF process ID 1 routing process. |
HULL(config-router)#redistribute eigrp 10 subnets |
Redistributes all EIGRP networks into OSPF. |
HULL(config-router)#distribute-list prefix FILTER out eigrp 10 |
Creates an outbound distribute list to filter routes being redistributed from EIGRP into OSPF that references the prefix list. |
NOTE: The implicit deny any statement at the end of the prefix list prevents routing updates about any other network from being advertised. As a result, networks 172.16.3.0/24 and 172.16.4.0/24 will not be redistributed into OSPF. |
Verifying Prefix Lists
show ip prefix-list [detail | summary] |
Displays information on all prefix lists. Specifying the detail keyword includes the description and the hit count (the number of times the entry matches a route) in the display. |
clear ip prefix-list prefix-list-name [network/length] |
Resets the hit count shown on prefix list entries. |
Using Route Maps with Route Redistribution
Router(config)#route-map MY_MAP permit 10 |
Creates a route map called MY_MAP. This route-map statement will permit redistribution based on subsequent criteria. A sequence number of 10 is assigned. |
Router(config-route-map)#match ip address 5 |
Specifies the match criteria (the conditions that should be tested); in this case, match addresses filtered using a standard access list number 5. |
Router(config-route-map)#set metric 500 |
Specifies the set action (what action is to be performed if the match criteria is met); in this case, set the external metric to 500 (instead of the default value of 20). |
Router(config-route-map)#set metric-type type-1 |
Specifies a second set action for the same match criteria. In this case, set the external OSPF network type to E1. |
Router(config-route-map)#route-map MY_MAP deny 20 |
Adds a second statement to the MY_MAP route map that will deny redistribution based on subsequent criteria. |
Router(config-route-map)#match ip address prefix-list MY_PFL |
Specifies the match criteria (the conditions that should be tested); in this case, match addresses filtered using a prefix list named MY_PFL. |
Router(config-route-map)#route-map MY_MAP permit 30 |
Adds a third statement to the MY_MAP route map that will permit redistribution based on subsequent criteria. |
NOTE: No “match” criteria are explicitly specified; all other routes will be redistributed with the following “set” criteria applied. |
|
Router(config-route-map)#set metric 5000 |
Specifies the set action (what action is to be performed if the match criteria is met); in this case, set the external metric to 5000 (instead of the default value of 20) |
Router(config-route-map)#set metric-type type 2 |
Specifies a second set action for the same match criteria; in this case, set the external OSPF network type to E2. This is optional since the default type for redistributed routes into OSPF is external type 2. |
Router(config-route-map)#router ospf 10 |
Enters OSPF process ID 10 routing process. |
Router(config-router)#redistribute eigrp 1 route-map MY_MAP subnets |
Redistributes only EIGRP routes that are permitted by route map MY_MAP into OSPF. |
Configuration Example: Route Maps
Figure 4-8 shows the network topology for the configuration that follows, which demonstrates how to control redistribution with a route map using the commands covered in this chapter. Assume that all basic configurations and EIGRP and OSPF routing have been configured correctly.
Figure 4-8 Network Topology for Route Map Configuration
The objective is to only redistribute networks 172.16.1.0/24 and 172.16.2.0/24 into OSPF and advertise them as external type 1 (E1) routes with an external metric of 50.
HULL(config)#access-list 5 permit 172.16.1.0 0.0.0.255 |
Creates a standard ACL number 5 and explicitly permits the 172.16.1.0/24 network. |
HULL (config)#access-list 5 permit 172.16.2.0 0.0.0.255 |
Adds a second line to ACL 5 that explicitly permits the 172.16.2.0/24 network. |
HULL(config)#route-map FILTER permit 10 |
Creates a route map called FILTER. This route map will permit traffic based on subsequent criteria. A sequence number of 10 is assigned. |
HULL(config-route-map)#match ip address 5 |
Specifies the match criteria; match addresses filtered from ACL 5. |
HULL(config-route-map)#set metric 50 HULL(config-route-map)#set metric-type type-1 |
Specifies the set actions (what actions are to be performed if the match criterion is met); in this case, sets the external metric to 50 and sets the type to external type 1 (E1). |
HULL(config)#router ospf 1 |
Enters OSPF process ID 1 routing process. |
HULL(config)#redistribute eigrp 10 subnets route-map FILTER |
Redistributes only those EIGRP networks into OSPF which match the route map. |
NOTE: Networks 172.16.2.0/24 and 172.16.3.0/24 will not be redistributed because of the implicit deny any at the end of the route map. |
Manipulating Redistribution Using Route Tagging
Two-way multipoint redistribution can introduce routing loops in the network. One option to prevent redistribution of already redistributed routes is to use route tagging. In two-way multipoint redistribution scenarios, route tags must be applied and filtered in both direction and on both routers performing redistribution.
Figure 4-9 shows the network topology for the configuration that follows, which demonstrates how to control redistribution with route tags using the commands covered in this chapter. Assume that all basic configurations and EIGRP and OSPF routing have been configured correctly. A tag number of 11 is used to identify OSPF routes, and a tag of 22 is used to identify EIGRP routes.
Figure 4-9 Network Topology for Redistribution Using Route Tagging
The following configuration needs to be entered on both the HULL and WENDOVER routers.
HULL(config)#route-map EIGRPtoOSPF deny 10 HULL(config-route-map)#match tag 11 |
Creates a route map named EIGRPtoOSPF and denies redistribution for all routes tagged with the value 11. |
HULL(config-route-map)#route-map EIGRPtoOSPF permit 20 HULL(config-route-map)#set tag 22 |
Creates a second statement for route map EIGRPtoOSPF permitting all other routes to be redistributed with a tag of 22. |
HULL(config-route-map)#route-map OSPFtoEIGRP deny 10 HULL(config-route-map)#match tag 22 |
Creates a route map names OSPFtoEIGRP and denies redistribution for all routes tagged with the value 22. |
HULL(config-route-map)#route-map OSPFtoEIGRP permit 20 HULL(config-route-map)#set tag 11 |
Creates a second statement for route map OSPFtoEIGRP permitting all other routes to be redistributed with a tag of 11. |
HULL(config-route-map)#router ospf 11 |
Enters OSPF configuration mode. |
HULL(config-router)#redistribute eigrp 22 subnets route-map EIGRPtoOSPF |
Redistributes all EIGRP routes with a tag of 22 into the OSPF domain. |
HULL(config-router)#router eigrp 22 |
Enters EIGRP configuration mode. |
HULL(config-router)#redistribute ospf 11 metric 1500 1 255 1 1500 route-map OSPFtoEIGRP |
Redistributes all OSPF routes with a tag of 11 into the EIGRP domain. |
NOTE: The result here is to ensure only routes originating in the OSPF domain are redistributed into EIGRP, while only routes originating in the EIGRP domain are redistributed into the OSPF domain. |
Changing Administrative Distance for Internal and External Routes
The commands to change the administrative distance (AD) for internal and external routes are as follows.
Router(config)#router ospf 1 |
Starts the OSPF routing process |
Router(config-router)#distance ospf intra-area 105 inter-area 105 external 125 |
Changes the AD to 105 for intra-area and interarea routes, and changes the AD to 125 for external routes |
Router(config)#router eigrp 100 |
Starts the EIGRP routing process |
Router(config-router)#distance eigrp 80 105 |
Changes the AD to 80 for internal EIGRP routes and changes the AD to 105 for EIGRP external routes |
Router(config)#router bgp 65001 |
Starts the BGP routing process |
Router(config-router)#distance bgp 30 200 220 |
Changes the AD to 30 for external BGP routes, 200 for internal BGP routes and 220 for local BGP routes |
Passive Interfaces
Router(config)#router rip |
Starts the RIP routing process. |
Router(config-router)#passive-interface serial0/0/0 |
Sets the interface as passive, meaning that routing updates will not be sent out this interface. |
NOTE: For RIP, the passive-inter-face command will prevent the inter-face from sending out routing updates but will allow the interface to receive updates. |
|
Router(config)#router rip |
Starts the RIP routing process. |
Router(config-router)#passive-interface default |
Sets all interfaces as passive. |
TIP: The passive-interface default command is useful for Internet service provider (ISP) and large enterprise net-works, where a distribution router may have as many as 200 interfaces. |
|
Router(config-router)#no passive-interface fastethernet0/0 |
Activates the FastEthernet0/0 interface to send and receive updates. |