{"id":454,"date":"2012-11-18T16:32:58","date_gmt":"2012-11-18T22:32:58","guid":{"rendered":"http:\/\/www.cavanaugh.pro\/sean\/?p=454"},"modified":"2012-11-18T16:32:58","modified_gmt":"2012-11-18T22:32:58","slug":"vrrpv3-with-ipv6-support-for-junos-cisco-ios","status":"publish","type":"post","link":"https:\/\/www.cavanaugh.pro\/sean\/vrrpv3-with-ipv6-support-for-junos-cisco-ios\/","title":{"rendered":"VRRPv3 with IPv6 Support for JUNOS &#038; Cisco IOS"},"content":{"rendered":"<p>Ran into a problem the other day where I was trying to configure <a href=\"http:\/\/en.wikipedia.org\/wiki\/Virtual_Router_Redundancy_Protocol\">VRRPv3<\/a> (which supports IPv6) between a Juniper MX480 and a Cisco 6509-E w\/ SUP2T.  The only config guide I could find for the Cisco device was <a href=\"http:\/\/www.cisco.com\/en\/US\/docs\/ios-xml\/ios\/ipapp_fhrp\/configuration\/15-2mt\/fhrp-vrrpv3.html\">this<\/a>.  While fairly detailed on turning on VRRP,  (<strong>and remember you need this command<\/strong>)<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nfhrp version vrrp v3\r\n<\/pre>\n<p>it did not go into any detail for the actual IPv6 implementation!  I already pinged the appropriate people but I thought I would share my config below in the meantime.  The main thing to note is that when configuring IPv6 w\/ VRRPv3 you have to manually add the link locals (as of the 15.1.1 ~Nov 18th, 2012).<\/p>\n<p>So I won&#8217;t put a diagram here but basically just imagine a port-channel between the Cisco &#038; Juniper that only allows vlan 2100.  Here is the Cisco config-><\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\ninterface Vlan2100\r\n ip address 201.13.110.2 255.255.254.0\r\n ipv6 address 2201:13:110::2\/64\r\n ipv6 enable\r\n vrrp 1 address-family ipv4\r\n  priority 120\r\n  address 201.13.110.1 primary\r\n exit-vrrp\r\n vrrp 1 address-family ipv6\r\n  priority 120\r\n  address FE80::13:110:1 primary\r\n  address 2201:13:110::1\/64\r\n exit-vrrp\r\nend\r\n<\/pre>\n<p>So the Juniper will automatically create a link-local address but you can override it (which you have to do if you are doing it on the Cisco).  Here is my Juniper config-><\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nirb {\r\n        unit 2100 {\r\n            description &quot;Voice Vlan&quot;;\r\n            family inet {\r\n                address 201.13.110.3\/23 {\r\n                    vrrp-group 1 {\r\n                        virtual-address 201.13.110.1;\r\n                        accept-data;\r\n                    }\r\n                }\r\n            }\r\n            family inet6 {\r\n                address 2201:13:110::3\/64 {\r\n                    vrrp-inet6-group 1 {\r\n                        virtual-inet6-address 2201:13:110::1;\r\n                        virtual-link-local-address fe80::13:110:1;\r\n                        accept-data;\r\n                    }\r\n                }\r\n<\/pre>\n<p>This config worked perfectly, and although it looks simple now it was pretty annoying to figure out that the routers were not smart enough to sync on their link-local if they have the same virtual global or vice versa.  Hopefully this will help someone out there!  If you have any questions, advice, etc make comments below.  Thanks.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ran into a problem the other day where I was trying to configure VRRPv3 (which supports IPv6) between a Juniper MX480 and a Cisco 6509-E w\/ SUP2T. The only config guide I could find for the Cisco device was this. While fairly detailed on turning on VRRP, (and remember you need this command) fhrp version &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.cavanaugh.pro\/sean\/vrrpv3-with-ipv6-support-for-junos-cisco-ios\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;VRRPv3 with IPv6 Support for JUNOS &#038; Cisco IOS&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[6],"tags":[8,9,7],"class_list":["post-454","post","type-post","status-publish","format-standard","hentry","category-networking","tag-ios","tag-junos","tag-vrrp"],"_links":{"self":[{"href":"https:\/\/www.cavanaugh.pro\/sean\/wp-json\/wp\/v2\/posts\/454","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cavanaugh.pro\/sean\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cavanaugh.pro\/sean\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cavanaugh.pro\/sean\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cavanaugh.pro\/sean\/wp-json\/wp\/v2\/comments?post=454"}],"version-history":[{"count":2,"href":"https:\/\/www.cavanaugh.pro\/sean\/wp-json\/wp\/v2\/posts\/454\/revisions"}],"predecessor-version":[{"id":456,"href":"https:\/\/www.cavanaugh.pro\/sean\/wp-json\/wp\/v2\/posts\/454\/revisions\/456"}],"wp:attachment":[{"href":"https:\/\/www.cavanaugh.pro\/sean\/wp-json\/wp\/v2\/media?parent=454"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cavanaugh.pro\/sean\/wp-json\/wp\/v2\/categories?post=454"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cavanaugh.pro\/sean\/wp-json\/wp\/v2\/tags?post=454"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}