1 00:00:00,000 --> 00:00:02,868 [AUDIO LOGO] 2 00:00:02,868 --> 00:00:07,180 3 00:00:07,180 --> 00:00:11,560 So now that we've reviewed how IPv6 addressing works 4 00:00:11,560 --> 00:00:14,260 and a little bit about neighbor discovery, 5 00:00:14,260 --> 00:00:16,840 now let's jump onto the command line 6 00:00:16,840 --> 00:00:18,940 and take a look at what this actually 7 00:00:18,940 --> 00:00:20,650 looks like on the equipment. 8 00:00:20,650 --> 00:00:23,980 And we'll take a look at a Wireshark capture 9 00:00:23,980 --> 00:00:27,920 and see what this actually looks like on the network itself. 10 00:00:27,920 --> 00:00:29,863 So let's start by looking at our topology. 11 00:00:29,863 --> 00:00:31,780 We're just going to be looking at two routers, 12 00:00:31,780 --> 00:00:33,238 but we just want to see who they're 13 00:00:33,238 --> 00:00:36,320 connected to so that the packets make a little bit more sense. 14 00:00:36,320 --> 00:00:41,230 And then we'll jump into the command line and Wireshark. 15 00:00:41,230 --> 00:00:42,910 So for this demonstration, we will 16 00:00:42,910 --> 00:00:47,710 be using IS-IS IPv6 Topology 1. 17 00:00:47,710 --> 00:00:51,110 And again, in this particular video, 18 00:00:51,110 --> 00:00:54,910 we're simply going to be looking at IPv6 configuration 19 00:00:54,910 --> 00:00:57,940 and some good show and debug commands. 20 00:00:57,940 --> 00:01:00,850 And we'll be focusing on router 1. 21 00:01:00,850 --> 00:01:04,420 This way we get to see some things on IOS XR. 22 00:01:04,420 --> 00:01:07,660 And then we'll also take a look at router 5 23 00:01:07,660 --> 00:01:11,830 so we can see similar outputs on IOS XE. 24 00:01:11,830 --> 00:01:13,810 So when we're looking at router 1, 25 00:01:13,810 --> 00:01:16,030 we'll see things like neighbor discovery 26 00:01:16,030 --> 00:01:18,400 from router 2, things like this. 27 00:01:18,400 --> 00:01:20,150 That's what we're going to be looking for. 28 00:01:20,150 --> 00:01:23,260 So that said, let's go ahead and jump into the command 29 00:01:23,260 --> 00:01:25,510 line on router 1. 30 00:01:25,510 --> 00:01:27,400 So we'll start off here on router 1 31 00:01:27,400 --> 00:01:30,650 just by doing a show ipv6 interface brief. 32 00:01:30,650 --> 00:01:34,660 And we can see here that all of our interfaces that we're using 33 00:01:34,660 --> 00:01:38,410 in this lab are currently configured both with 34 00:01:38,410 --> 00:01:42,640 a link-local address and with a globally routable address, 35 00:01:42,640 --> 00:01:46,651 starting with 2001:db8. 36 00:01:46,651 --> 00:01:49,240 This is then followed by the subnet portion, 37 00:01:49,240 --> 00:01:55,270 such as 10 or 12, 135, 167, and then, of course, 38 00:01:55,270 --> 00:01:57,640 followed by the host portion. 39 00:01:57,640 --> 00:02:02,350 Also, take note, as we discussed during our addressing video, 40 00:02:02,350 --> 00:02:04,960 that all of these interfaces have 41 00:02:04,960 --> 00:02:07,250 that same link-local address. 42 00:02:07,250 --> 00:02:10,940 And again, this is perfectly fine and, quite honestly, 43 00:02:10,940 --> 00:02:13,210 a pretty convenient thing to do. 44 00:02:13,210 --> 00:02:15,050 We could also do a ping. 45 00:02:15,050 --> 00:02:19,240 So we'll ping out our Gigabit 0/0/0/0 interface and see if we 46 00:02:19,240 --> 00:02:20,740 can reach router 2. 47 00:02:20,740 --> 00:02:23,320 So for that, we'll ping the globally reachable address. 48 00:02:23,320 --> 00:02:30,280 We'll ping the 2001::db8:12::2 would be router 2's host 49 00:02:30,280 --> 00:02:31,660 portion. 50 00:02:31,660 --> 00:02:34,010 We see here that that's successful. 51 00:02:34,010 --> 00:02:37,670 That means that we also should have done a neighbor discovery. 52 00:02:37,670 --> 00:02:40,060 So if we do a show ipv6 neighbor, 53 00:02:40,060 --> 00:02:43,150 we should now have at least router 2 as an entry. 54 00:02:43,150 --> 00:02:45,490 And we can see right here that we do. 55 00:02:45,490 --> 00:02:48,250 Not only do we have its global address, 56 00:02:48,250 --> 00:02:52,100 but we can see we have its link-local address as well. 57 00:02:52,100 --> 00:02:54,820 Now, we can ping that link-local address. 58 00:02:54,820 --> 00:02:57,230 But things do get a little interesting. 59 00:02:57,230 --> 00:03:02,920 So if I say ping fe80::2, which would be router 2's link-local 60 00:03:02,920 --> 00:03:07,480 address, the problem is the router has no idea what 61 00:03:07,480 --> 00:03:10,190 interface to send that out, because again, 62 00:03:10,190 --> 00:03:12,080 if we look at our other interfaces, 63 00:03:12,080 --> 00:03:15,110 they all have fe80 on them. 64 00:03:15,110 --> 00:03:17,110 So we have to actually tell it. 65 00:03:17,110 --> 00:03:19,160 And here's the really fun part. 66 00:03:19,160 --> 00:03:23,017 If I say Gig 0/0/0/0 and hit Enter, it's going to say, 67 00:03:23,017 --> 00:03:24,100 I don't know what that is. 68 00:03:24,100 --> 00:03:25,570 I've never heard of it. 69 00:03:25,570 --> 00:03:28,090 No, instead, what you have to do is 70 00:03:28,090 --> 00:03:33,580 you have to actually say GigabitEthernet 71 00:03:33,580 --> 00:03:35,540 and spell it out. 72 00:03:35,540 --> 00:03:38,390 Now you can see it works perfectly fine. 73 00:03:38,390 --> 00:03:43,320 But just to show you one other thing, if I do it again, 74 00:03:43,320 --> 00:03:45,130 it doesn't like that either. 75 00:03:45,130 --> 00:03:48,360 So not only do you have to spell the entire interface out, 76 00:03:48,360 --> 00:03:51,532 but it has to be case sensitive. 77 00:03:51,532 --> 00:03:53,490 Now, I'm going to show you one other thing that 78 00:03:53,490 --> 00:03:54,210 doesn't work here. 79 00:03:54,210 --> 00:03:55,800 And I know it might seem odd to show you 80 00:03:55,800 --> 00:03:56,970 something that doesn't work. 81 00:03:56,970 --> 00:03:59,190 But you'll see why in just a moment. 82 00:03:59,190 --> 00:04:06,480 If I say to ping fe80::2 and then say %GigabitEthernet 83 00:04:06,480 --> 00:04:11,440 0/0/0/0, this is also not going to work. 84 00:04:11,440 --> 00:04:16,230 The reason I'm bringing this up is when we get to IOS XE, 85 00:04:16,230 --> 00:04:17,790 we will do this again. 86 00:04:17,790 --> 00:04:20,490 And we'll see that that actually does work. 87 00:04:20,490 --> 00:04:23,760 This is a special IPv6 naming convention 88 00:04:23,760 --> 00:04:28,290 that actually lets us list the egress interface along 89 00:04:28,290 --> 00:04:29,850 with the destination. 90 00:04:29,850 --> 00:04:32,670 But as we can see, this is at least currently 91 00:04:32,670 --> 00:04:36,060 not supported on IOS XR. 92 00:04:36,060 --> 00:04:38,640 Now, some other good commands to look at-- 93 00:04:38,640 --> 00:04:42,660 show ipv6 traffic brief. 94 00:04:42,660 --> 00:04:45,090 This will just give us a general overview 95 00:04:45,090 --> 00:04:47,560 of how many packets have been sent and received, 96 00:04:47,560 --> 00:04:50,910 and so on, as well as ICMP statistics down here 97 00:04:50,910 --> 00:04:52,330 at the bottom. 98 00:04:52,330 --> 00:04:55,020 We can also see, when we scroll down to the very bottom, 99 00:04:55,020 --> 00:04:57,660 that we have our Neighbor Discovery ICMP 100 00:04:57,660 --> 00:04:59,710 statistics as well. 101 00:04:59,710 --> 00:05:02,160 So this is something that we can keep track of. 102 00:05:02,160 --> 00:05:05,520 Of course, we can also do show route ipv6. 103 00:05:05,520 --> 00:05:08,740 This will show us the IPv6 routing table, 104 00:05:08,740 --> 00:05:10,200 which as of right now is just going 105 00:05:10,200 --> 00:05:12,540 to be local and connected routes because we haven't 106 00:05:12,540 --> 00:05:14,730 set up any routing just yet. 107 00:05:14,730 --> 00:05:17,100 And a good debug we can keep track of 108 00:05:17,100 --> 00:05:22,530 is debug ipv6 neighbor discovery packet. 109 00:05:22,530 --> 00:05:26,130 If we do this, we can see here that we get a router 110 00:05:26,130 --> 00:05:27,708 advertisement message. 111 00:05:27,708 --> 00:05:30,000 So here we can see it would show us all of our neighbor 112 00:05:30,000 --> 00:05:31,320 discovery packets. 113 00:05:31,320 --> 00:05:34,110 In this case, we just happen to see a router advertisement 114 00:05:34,110 --> 00:05:38,250 message because these are sent out on a timed basis. 115 00:05:38,250 --> 00:05:39,922 Of course, if we were to ping something, 116 00:05:39,922 --> 00:05:41,880 we will be able to see those neighbor discovery 117 00:05:41,880 --> 00:05:43,090 packets as well. 118 00:05:43,090 --> 00:05:46,450 But we'll see those in our Wireshark capture. 119 00:05:46,450 --> 00:05:48,757 Now, let's jump over to router 5 and see 120 00:05:48,757 --> 00:05:50,340 some of these similar commands and how 121 00:05:50,340 --> 00:05:54,330 to see the same information on IOS XE. 122 00:05:54,330 --> 00:05:58,590 So once again, we'll start with a show ipv6 interface brief. 123 00:05:58,590 --> 00:05:59,980 Pretty much the same output. 124 00:05:59,980 --> 00:06:02,100 We can see once again that we have 125 00:06:02,100 --> 00:06:06,790 both link-local and global addresses on our interfaces. 126 00:06:06,790 --> 00:06:10,830 Now, on this one, notice, if we do a ping fe80 colon colon-- 127 00:06:10,830 --> 00:06:13,590 and let's again say we're going to ping router 2-- 128 00:06:13,590 --> 00:06:15,960 this is what we were talking about earlier, where 129 00:06:15,960 --> 00:06:20,145 if I say percent, I can now put the egress interface, 130 00:06:20,145 --> 00:06:24,420 GigabitEthernet2, and it'll take this and use it 131 00:06:24,420 --> 00:06:26,620 as the egress interface. 132 00:06:26,620 --> 00:06:30,450 So we can see that this convention works on IOS XE. 133 00:06:30,450 --> 00:06:33,750 It is, however, keep in mind, still case sensitive. 134 00:06:33,750 --> 00:06:37,110 Once again, we have commands like show ipv6 neighbor. 135 00:06:37,110 --> 00:06:41,370 This will show us our layer 2 to layer 3 mappings. 136 00:06:41,370 --> 00:06:42,930 We can see at this point, all we've 137 00:06:42,930 --> 00:06:46,770 learned is router 2's link-local address. 138 00:06:46,770 --> 00:06:49,050 If, by the way, we were to change this 139 00:06:49,050 --> 00:06:53,140 and say ping router 4, which is at that same segment, 140 00:06:53,140 --> 00:06:54,580 look at our neighbors again. 141 00:06:54,580 --> 00:06:58,230 We see that now we know about 2 and 4. 142 00:06:58,230 --> 00:07:01,560 We still have the show ipv6 traffic. 143 00:07:01,560 --> 00:07:04,020 Again, it shows us the same basic information, 144 00:07:04,020 --> 00:07:06,300 slightly different output. 145 00:07:06,300 --> 00:07:09,600 Show ipv6 route-- again, just local 146 00:07:09,600 --> 00:07:12,840 and connected for right now, but showing us the IPv6 147 00:07:12,840 --> 00:07:15,030 routing table nonetheless. 148 00:07:15,030 --> 00:07:18,735 And once again, we have debug ipv6 neighbor discovery 149 00:07:18,735 --> 00:07:20,850 as a very useful command. 150 00:07:20,850 --> 00:07:24,990 On IOS XE, we'll have to turn on terminal monitor to see those. 151 00:07:24,990 --> 00:07:28,140 And once again, we see a router advertisement message 152 00:07:28,140 --> 00:07:29,200 coming in here-- 153 00:07:29,200 --> 00:07:31,920 in this case, from router 2. 154 00:07:31,920 --> 00:07:35,220 So now that we've seen what this looks like on the command line, 155 00:07:35,220 --> 00:07:38,230 let's jump into a Wireshark capture. 156 00:07:38,230 --> 00:07:39,970 Now, this is a capture I already made, 157 00:07:39,970 --> 00:07:43,177 so I'm just opening a presaved capture, in this case. 158 00:07:43,177 --> 00:07:44,760 But let's take a look at it because we 159 00:07:44,760 --> 00:07:48,690 can see both the router advertisement messages as well 160 00:07:48,690 --> 00:07:54,010 as some neighbor discovery, both solicitation and advertisement. 161 00:07:54,010 --> 00:07:57,860 So let's go ahead and jump in and take a look at that. 162 00:07:57,860 --> 00:07:59,620 So this is our packet capture. 163 00:07:59,620 --> 00:08:03,130 It is filtered for just IPv6 traffic. 164 00:08:03,130 --> 00:08:06,850 And what we see here on this first packet here, number 12, 165 00:08:06,850 --> 00:08:11,530 is we have a router advertisement message being 166 00:08:11,530 --> 00:08:13,750 sent from this MAC address. 167 00:08:13,750 --> 00:08:18,670 And it's going from the source of fe80::2, 168 00:08:18,670 --> 00:08:22,180 which would indicate to us in our design that that's router 169 00:08:22,180 --> 00:08:22,930 2. 170 00:08:22,930 --> 00:08:27,760 And it's going to the destination ff02::1, 171 00:08:27,760 --> 00:08:33,710 which in IPv6 is a link-local multicast for all routers. 172 00:08:33,710 --> 00:08:38,590 So in this case, this is router 2 announcing itself as a router 173 00:08:38,590 --> 00:08:40,220 onto the segment. 174 00:08:40,220 --> 00:08:42,700 And if we look down here into the actual packet 175 00:08:42,700 --> 00:08:45,910 itself, under the Internet Control Message Protocol 176 00:08:45,910 --> 00:08:49,870 version 6, two things we want to look at that we've discussed. 177 00:08:49,870 --> 00:08:54,490 The first is the fact that this is a type Router Advertisement, 178 00:08:54,490 --> 00:08:57,610 and it is in fact type 134. 179 00:08:57,610 --> 00:09:01,360 Also, what's it actually advertising? 180 00:09:01,360 --> 00:09:10,270 It's advertising that it has this prefix, 2001:db8:12::/64, 181 00:09:10,270 --> 00:09:14,020 as an available prefix that it's routing for. 182 00:09:14,020 --> 00:09:17,020 So this is a router advertisement message 183 00:09:17,020 --> 00:09:19,780 as it would look on the network. 184 00:09:19,780 --> 00:09:26,080 Our next packet, number 44, is a neighbor solicitation message. 185 00:09:26,080 --> 00:09:31,630 In this case, we can see that it's fe80::1, so router 1, 186 00:09:31,630 --> 00:09:37,990 looking for the destination 2001:db8:12::2. 187 00:09:37,990 --> 00:09:40,400 What do we see about this packet? 188 00:09:40,400 --> 00:09:43,840 So we can see that it's type Neighbor Solicitation, which 189 00:09:43,840 --> 00:09:45,730 is type 135. 190 00:09:45,730 --> 00:09:48,860 And what's it actually looking for? 191 00:09:48,860 --> 00:09:51,280 We can see that it's looking for the target address, 192 00:09:51,280 --> 00:09:55,990 2001:db:12::2. 193 00:09:55,990 --> 00:09:58,420 So again, this is the neighbor solicitation, 194 00:09:58,420 --> 00:10:01,180 much like an ARP request. 195 00:10:01,180 --> 00:10:11,470 Right below this, packet 45, we have 2001:db:12::2 responding 196 00:10:11,470 --> 00:10:15,490 to fe80::1, which is router 1. 197 00:10:15,490 --> 00:10:17,950 And it's a neighbor advertisement. 198 00:10:17,950 --> 00:10:21,700 This is the router responding with its MAC address, 199 00:10:21,700 --> 00:10:25,360 saying that it has that address. 200 00:10:25,360 --> 00:10:29,170 We see here that under the ICMPv6 option, 201 00:10:29,170 --> 00:10:32,870 it is replying with its MAC address. 202 00:10:32,870 --> 00:10:39,440 So this would be the equivalent of the ARP reply in IPv4. 203 00:10:39,440 --> 00:10:43,280 So in this video, we jumped into the command line, 204 00:10:43,280 --> 00:10:46,880 and we took a look at our IPv6 interfaces. 205 00:10:46,880 --> 00:10:49,250 We did some testing with some pinging. 206 00:10:49,250 --> 00:10:52,880 We looked at some debugs for the neighbor discovery packets. 207 00:10:52,880 --> 00:10:55,070 And then we jumped into Wireshark, 208 00:10:55,070 --> 00:10:58,340 and we looked at what router advertisements, neighbor 209 00:10:58,340 --> 00:11:02,420 solicitation, and neighbor advertisement messages all 210 00:11:02,420 --> 00:11:05,160 look like on the network itself. 211 00:11:05,160 --> 00:11:07,280 I hope this has been informative for you, 212 00:11:07,280 --> 00:11:10,390 and I'd like to thank you for viewing. 213 00:11:10,390 --> 00:11:14,000