Detailed look at EIGRP Neighbor Adjacency

Hi Dani,

This is the latest version, it was updated a few months ago. I updated the PDF files for the print but Amazon always shows the original print date.


Hi Rene,

Thank you for the nice explanation.

I’ve a question in my mind. In order to fulfill the neighborship what are the parameters that need to matched at both the router ?

Can you please explain this

Thank you



Hi Taslim,

There are a couple of parameters that have to match:

  • Authentication
  • AS Number
  • K values
  • Subnet
You can also take a look at this post where I walk you through the most common issues with the EIGRP neigbor adjacency:

EIGRP Neighbor Adjacency Troubleshooting


Hi Rene,

What are the EIGRP Neighbor Parameters for building adjacency.


Hi Ajay,

You can find it in the answer right above your question. Authentication, AS number, K values and subnet are the required parameters that have to match on both ends.


Hello Rene,
Thanks for your explanation.
I just want to ask you, why you added the subnet mask for network while you did not for network as below:
Thanks in advance.

R1(config)#router eigrp 1
R1(config-router)#no auto-summary 

Hi @wisamani,

If you don’t supply a wildcard then EIGRP will assume you want the whole network to be advertised. Here’s an example:

Router(config)#router eigrp 1
Router(config-router)#no auto-summary 

This is what is stored in the running config:

Router#show run | begin router eigrp
router eigrp 1
 network falls under the class A range so that’s what EIGRP adds to the running config. If you don’t want this, you have to add a wildcard:

Router(config)#router eigrp 1
Router(config-router)#no network

And you will get:

Router#show run | begin router eigrp
router eigrp 1

Even without the wildcard, it would have worked but enabling EIGRP for all 1.x.x.x networks might not be what you want.

I didn’t have to do this for since that’s a class C network. If I used a /25 - /30 subnet mask then I would have to add the correct subnet mask.

Hope this helps!

I got it. Thanks a lot Rene for your reply.

Hello Rene,

Your site is great and easy to understand.

In this topic i understand the part which you had mention if you don’t specify the wild card which command is stated below :

no auto- summary
router eigrp 1 network  ****

then in result, you’ll find “network” in your show run.

However when i read about the topic on RIP - “How to configure RIP on cisco router”

In the statement
“You can see that R2 has learned about network /24 and /24. This is because R1 and R3 are advertising /24 and /24, not anymore. R1 and R3 also have learned about each other’s networks.”

I am abit confused because i realize there is no wildcard added for the network command.

Is there a difference in concept for RIP and EIGRP regarding the network and wildcard command ?

I mean in another word, no auto-summary for RIP, why i see there is no wildcard for and network ?

Thank you


Hello Qifeng

In EIGRP, if you don’t use the no auto-summary command, the router will assume a classful network address regardless of the wildcard mask you enter.

Once you enter the no auto-summary command, EIGRP will begin sending the wildcard mask information as well.

As for RIP, version 1 will send classful routing information. In order to send classless routing information, RIP must be configured to use Version 2 AND must include the no auto-summary command.

Now the difference between EIGRP and RIP is that when you configure the network command for RIP, you don’t input a wildcard mask. It won’t let you. Take a look at this output:

Router#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#router rip
Router(config-router)#version 2
Router(config-router)#network ?

The only option it gives you after the network address is <cr>.

So in RIP, if you configure version 2 and no auto-summary, the router will use the subnet mask configured on the interface associated with the network. So for the example you used, if you have two interfaces with IP addresses and respectively and you configure those networks using RIP, it will use the subnet masks (/24) configured on the interfaces themselves.

I hope this has been helpful!


That’s really helpful, thanks Laz!

1 Like

Hi community,

I found out something interesting in cloudshark and I even saw this in my GNS3 Lab I did when I traced neighbor adjacency.

Seems like that the initial Update Packet is Unicasted to it’s Neighbor after receiving a Hello Packet but that Update at that time doesn’t contain any Network Information, only a Flag is set (Init Flag).

The receiver of this seems to Acknowledge this Unicast Update Packet but not with an ACK as i thought it actually will use a Update Packet with the same Flag and also no information about the network yet.

Now the most confusing point is that the actual “Full Update” with all Network Information is sent as Multicast to all EIGRP Listeners ( with a new Sequence number but later on it is also sent again as Unicast.

The full trace is here:

Can someone explain this trace to me ?

Best regards,

1 Like

Hello Marcel

It’s great to see that you’re looking at the operation of EIGRP in such detail, it helps to learn more about the protocol’s operation!

What EIGRP will do is it will initially send an empty update during the neighbor establishment phase. After hellos are exchanged, an empty update will be sent to verify unicast and multicast reachability between the neighbors before beginning to exchange routes.

This sequence is described in detail in RFC7868 which fully describes the neighbor adjacency procedure using UPDATE packets.

According to the RFC, Reliable Transport Protocol (RTP) is used to provide guaranteed, ordered delivery of EIGRP packets to all neighbors. It supports intermixed transmission of multicast and unicast packets. Now it states in the RFC that:

The UPDATE exchange sequence requires UPDATE packets sent to be delivered reliably. If the UPDATE or the ACK packet is lost on the network, the UPDATE packet will be retransmitted. The initial packet is always multicast and subsequent retransmissions are unicast addressed. The acknowledgments sent are always unicast addressed.

You can find the above text specifically at the following location.

So there are cases where an update will indeed be sent via unicast, as is the case in the particular packet capture you shared.

I hope this has been helpful!


1 Like


When I used below to advertise only loopback it’s still advertising to R2. Why? And how can I advertise /32 only?

//int loo0
//ip address
Router(config)#router eigrp 1

Hello Murat

Remember that the network command indicates to the router which connected SUBNETS will be advertised, not which range of addresses will be advertised. If the network of a connected interface falls within the range of IP addresses stated by the network command, then the subnet of the interface is advertised.

In your case, since you have configured the interface as, the subnet that will be advertised is If you want only to be advertised, then you should configure the IP address of the loopback interface with the command ip address The router will then advertise the subnet of the interface, which is confined to a single address.

I hope this has been helpful!



you stated ’ If the network of a connected interface falls within the range of IP addresses stated by the network command’ but here oppositely the range of IP addresses stated by the network command ( falls within the network of a connected interface( So, is is the same with which you mention?


Hello Murat

According to Cisco, the network command for EIGRP works as follows:

When the network command is configured for an EIGRP routing process, the router matches one or more local interfaces. The network command matches only local interfaces that are configured with addresses that are within the same subnet as the address that has been configured with the network command.

So even if you have stated within the network command that you want to include network, this IP address/subnet mask combination, when compared with the network assigned to the loopback of, and it will match, even though the whole network doesn’t fit into the range configured with the network command. It matches with the network on the interface.

The above statement from Cisco was obtained from this Cisco Documentation.

I hope this has been helpful!


Hi Rene/Laz

When we advertise the network in the topology in the lesson, having already applied the no auto-summary command, is it necessary to send the wildcard mask in the network command? Doesn’t the router pick up the subnet mask from the interface configuration?

Thanks in advance,

Hello Philip

Yes, you are correct. If you disable auto-summary there is no need to enter the subnet mask in the network command as this will be taken care of by the subnet mask on the interface itself. Sometimes it just feels better to include the subnet mask in the network command, but it is not necessary in this case. I have labbed it up and confirmed this.

Just a note here, Rene states that by default, EIGRP will behave like a classful routing protocol, but since the writing of the lesson, for more recent versions of IOS, auto-summary is actually disabled by default for EIGRP. You can find out more about this command at this Cisco command reference.

I hope this has been helpful!


Hi Laz,

Just to reference your answer to Philip:


If no auto-summary makes EIGRP classless, then why would you add a Wildcard mask of in the network command if the loopback0 interface is configured as ?