{"id":11773,"date":"2020-02-18T13:49:21","date_gmt":"2020-02-18T16:49:21","guid":{"rendered":"https:\/\/made4it.com.br\/interconnecting-two-virtual-systems-vs-on-platform-huawei-ne-interconnecting-2-virtual-routers-on-huawei-ne\/"},"modified":"2023-03-09T14:42:20","modified_gmt":"2023-03-09T17:42:20","slug":"interconnecting-two-virtual-systems-vs-on-platform-huawei-ne-interconnecting-2-virtual-routers-on-huawei-ne","status":"publish","type":"post","link":"https:\/\/made4it.com.br\/en\/interconnecting-two-virtual-systems-vs-on-platform-huawei-ne-interconnecting-2-virtual-routers-on-huawei-ne\/","title":{"rendered":"Interconnecting two Virtual Systems (VS) on Huawei NE platform (Interconnecting 2 virtual routers on Huawei NE)"},"content":{"rendered":"\n<p>Huawei&#8217;s NE40 line, especially the M2K and M2K-B models, has become the new &#8220;darling&#8221; of ISPs in Brazil, allowing several cost-effective scenarios, both at the Core Network layer (BGP, Aggregation Routers, and the like) and at the Access layer (BNGs IPoE, PPPoE&#8230;).<br><br>Recently at Made4IT, we had a case where a customer with an NE40E-M2K-B needed a virtualization at the Chassis level, so that a partner could also take advantage of the box resources but with a certain level of segregation.<\/p>\n<p>With our knowledge and expertise with the vendor, we suggested and designed a Virtual System in the box for this purpose, and, following the vendor&#8217;s recommendation, we informed the customer that the communication between the &#8220;virtual-systems&#8221; should be through dedicated network ports, where we would have a &#8220;physical loop&#8221; to deliver data to the partner&#8217;s &#8220;virtual-system&#8221;. Here in the company, we have come to affectionately call this feature the <em>&#8220;coffin strap<\/em>&#8221; (laughs).<\/p>\n<p>&nbsp;<\/p>\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img fetchpriority=\"high\" decoding=\"async\" width=\"312\" height=\"208\" src=\"https:\/\/www.made4it.com.br\/wp-content\/uploads\/2020\/02\/alca.png\" alt=\"\" class=\"wp-image-1096\" srcset=\"https:\/\/made4it.com.br\/wp-content\/uploads\/2020\/02\/alca.png 312w, https:\/\/made4it.com.br\/wp-content\/uploads\/2020\/02\/alca-300x200.png 300w\" sizes=\"(max-width: 312px) 100vw, 312px\" \/><\/figure><\/div>\n\n<p>With this, <em>\n  <strong>the first way<\/strong>\n<\/em> to link two VS is simply to connect a cable between two ports on the same router, allocating each port to a single VS.<\/p>\n<p><strong><span lang=\"PT-BR\">Se quer saber mais sobre virtualiza\u00e7\u00e3o de roteadores Huawei, consulte o post&nbsp;<a href=\"https:\/\/www.made4it.com.br\/roteadores-virtuais-vs-virtual-system-no-huawei-ne\/\" target=\"_blank\" rel=\"noopener\">Roteadores Virtuais (VS \/ Virtual-System) no Huawei NE<\/a><\/span><\/strong><\/p>\n<p>In this same scenario, a while back we did an implementation where his need was simple, being basically:<br><br><em>&#8220;My carrier is approaching me on 2 different pieces of equipment in my network being BGP and an MPLS Switch that I have 40km away. The carrier wants to use MPLS with me. I need to route MPLS on my NE40 where the carrier will deliver the circuits to me on some VPWS&#8217;es.&#8221;<\/em><\/p>\n<p>In this case the deployment went smoothly, using the <em>&#8220;Virtual Ethernet <\/em>&#8221; feature&nbsp;where the &#8220;layer2&#8221; side and the &#8220;layer3&#8221; side have distinct interfaces to work the VPWS and do the IP connectivity respectively.<\/p>\n<p><br><strong>If you don&#8217;t know about MPLS on NE routers, or if the concept of &#8220;layer2 side&#8221; or &#8220;layer3 side&#8221; didn&#8217;t make sense, see the post <a href=\"https:\/\/www.made4it.com.br\/interfaces-l3-em-tuneis-l2-mpls-no-roteador-huawei-ne-como-configurar-mpls-com-ip-no-huawei\/\" target=\"_blank\" rel=\"noopener\">L3 Interfaces in L2 MPLS Tunnels on Huawei NE Router (How to configure MPLS with IP on Huawei)<\/a>&nbsp;<\/strong><\/p>\n\n<h3 class=\"wp-block-heading\">The other way to link&#8230;<\/h3>\n\n<p>In our constant, daily exchanges of experience between the N2 and N3 teams, one of our consultants had an insight in a moment of reverie (usually in the shower, in the bathroom, opening the fridge, walking, etc):<br><br>&#8220;We know that a virtual-ethernet has its layer2 side and its layer3 side.  <br>And we know that we can put one of these sides on a <em>virtual-system<\/em> other than <em>admin<\/em> because, <em>virtual-ethernets<\/em> can only be created in <em>vs admin.<\/em> Now imagine, if we made 2 different <em>ve-groups<\/em> and used a <em>circuit-cross-connection (CCC) <\/em>from <em>MPLS<\/em> to join those 2 layer2 sides, would it be possible to make the <em>virtual-systems<\/em> talk to each other in layer3 without needing the <em>coffin strap ?<\/em>&#8220;<em><br><br><\/em>Just to name a few, CCC is the most basic, non-signaling way to connect two services via a VPWS.<\/p>\n<p>Then we set out to test the interconnection of two local VS via an MPLS CCC.<\/p>\n\n<h2 class=\"wp-block-heading\">Interconnecting two VS via VPN VPWS CCC<\/h2>\n\n<p><strong>Scenario:<\/strong><\/p>\n<p>For our tests we will use two VE-GROUPs, interconnect the L2 of the VE-GROUPs via CCC VPWS, and keep one side L3 in Admin-VS while the other side L3 we will put in VS1.<\/p>\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" width=\"770\" height=\"131\" src=\"https:\/\/www.made4it.com.br\/wp-content\/uploads\/2020\/02\/vegr.png\" alt=\"\" class=\"wp-image-1097\" srcset=\"https:\/\/made4it.com.br\/wp-content\/uploads\/2020\/02\/vegr.png 770w, https:\/\/made4it.com.br\/wp-content\/uploads\/2020\/02\/vegr-300x51.png 300w, https:\/\/made4it.com.br\/wp-content\/uploads\/2020\/02\/vegr-768x131.png 768w\" sizes=\"(max-width: 770px) 100vw, 770px\" \/><\/figure>\n\n<p><strong>Settings:<\/strong><\/p>\n<p>First, we will create the interfaces that will be part of L2:<\/p>\n\n<pre class=\"wp-block-preformatted\"># Admin-VS<br\/> <br\/>! Side L2 Admin-VS<br\/> <br\/>Virtual-Ethernet0\/2\/100 interface<br\/>  ve-group 100 l2-terminate<br\/> <br\/>Virtual-Ethernet0\/2\/100,100 interface<br\/>  vlan-type dot1q 100<br\/> <br\/>! Side L2 VS1<br\/> <br\/>Virtual-Ethernet0\/2\/200 interface<br\/>  ve-group 200 l2-terminate<br\/> <br\/>Virtual-Ethernet0\/2\/200.100 interface<br\/>  vlan-type dot1q 100<\/pre>\n\n<p>After that we will interconnect VLAN 100 via VPN VPWS CCC:<\/p>\n\n<pre class=\"wp-block-preformatted\">! MPLS CCC VPWS Interconnection<br\/>ccc test interface Virtual-Ethernet0\/2\/100,100 tagged out-interface Virtual-Ethernet0\/2\/200,100 tagged<\/pre>\n\n<p>With layer2 configured, we can move on to activating the L3 services:<\/p>\n\n<pre class=\"wp-block-preformatted\"># Admin-VS<br\/> <br\/>! Side L3 Admin-VS<br\/> <br\/>Virtual-Ethernet0\/2\/101 interface<br\/>  mac-address c4b8-b434-ab45<br\/>  ve-group 100 l3-access<br\/> <br\/>interface Virtual-Ethernet0\/2\/101.100<br\/>  vlan-type dot1q 100<br\/>  ip address 10.1.1.1 255.255.255.252<br\/> <br\/> <br\/>! Side L3 VS1<br\/> <br\/>interface Virtual-Ethernet0\/2\/201<br\/>  ve-group 200 l3-access<br\/> <br\/>interface Virtual-Ethernet0\/2\/201.100<br\/>  vlan-type dot1q 100<\/pre>\n\n<p><span lang=\"PT-BR\">Finally, we will insert only the L3 subinterface for VS1.<\/span><\/p>\n\n<pre class=\"wp-block-preformatted\"># Admin-VS<br\/>admin<br\/>  virtual-system vs1 pvmb slot 3<br\/>  port-mode port<br\/>  assign interface Virtual-Ethernet0\/2\/201.100<br\/> <br\/> <br\/># VS1<br\/> <br\/>! Side L3 VS1<br\/>interface Virtual-Ethernet0\/2\/201.100<br\/>  vlan-type dot1q 100<br\/>  ip address 10.1.1.2 255.255.255.252<\/pre>\n\n<h3 class=\"wp-block-heading\">Scenario Considerations<\/h3>\n\n<p>Some considerations of the scenario:<\/p>\n<ul>\n<li>It was only possible to add a vlan subinterface in the virtual-system, it did not allow the entire virtual-ethernet<\/li>\n<li>It was necessary to change the mac-address of the Virtual-Ethernet on one side, because the VS inherits the mac from the chassis<\/li>\n<\/ul>\n\n<h3 class=\"wp-block-heading\">Validations<\/h3>\n\n<p>CCC between virtual-ethernets up:<\/p>\n\n<pre class=\"wp-block-preformatted\">&lt;HUAWEI&gt;display vll ccc<br\/>total ccc vc : 1<br\/>local ccc vc : 1, 1 up<br\/>remote ccc vc : 0, 0 up<br\/> <br\/>name: test, type: local, state: up,<br\/>intf1: Virtual-Ethernet0\/2\/100.100 (up), access-port: false<br\/> <br\/>intf2: Virtual-Ethernet0\/2\/200.100 (up), access-port: false<br\/> <br\/>VC last up time : 2020\/02\/17 14:40:58<br\/>VC total up time: 0 days, 0 hours, 16 minutes, 37 seconds<\/pre>\n\n<p>Ping between the two VS:<\/p>\n\n<pre class=\"wp-block-preformatted\">Admin-VS:<br\/>&lt;HUAWEI&gt;ping 10.1.1.2<br\/>  PING 10.1.1.2: 56 data bytes, press CTRL_C to break<br\/>  Reply from 10.1.1.2: bytes=56 Sequence=1 ttl=255 time=1 ms<br\/>  Reply from 10.1.1.2: bytes=56 Sequence=2 ttl=255 time=1 ms<br\/>  Reply from 10.1.1.2: bytes=56 Sequence=3 ttl=255 time=1 msd<br\/>  Reply from 10.1.1.2: bytes=56 Sequence=4 ttl=255 time=1 ms<br\/>  Reply from 10.1.1.2: bytes=56 Sequence=5 ttl=255 time=1 ms<br\/> <br\/>  --- 10.1.1.2 ping statistics ---<br\/>  5 packet(s) transmitted<br\/>  5 packet(s) received<br\/>  0.00% packet loss<br\/>  round-trip min\/avg\/max = 1\/1\/1 ms<br\/> <br\/> <br\/>VS1:<br\/>&lt;HUAWEI-vs1&gt;ping 10.1.1.1<br\/>  PING 10.1.1.1: 56 data bytes, press CTRL_C to break<br\/>  Reply from 10.1.1.1: bytes=56 Sequence=1 ttl=255 time=1 ms<br\/>  Reply from 10.1.1.1: bytes=56 Sequence=2 ttl=255 time=1 ms<br\/>  Reply from 10.1.1.1: bytes=56 Sequence=3 ttl=255 time=1 ms<br\/>  Reply from 10.1.1.1: bytes=56 Sequence=4 ttl=255 time=1 ms<br\/>  Reply from 10.1.1.1: bytes=56 Sequence=5 ttl=255 time=1 ms<br\/> <br\/>  --- 10.1.1.1 ping statistics ---<br\/>  5 packet(s) transmitted<br\/>  5 packet(s) received<br\/>  0.00% packet loss<br\/>  round-trip min\/avg\/max = 1\/1\/1 ms&lt;HUAWEI&gt;ping 10.1.1.2<br\/>  PING 10.1.1.2: 56 data bytes, press CTRL_C to break<br\/>  Reply from 10.1.1.2: bytes=56 Sequence=1 ttl=255 time=1 ms<br\/>  Reply from 10.1.1.2: bytes=56 Sequence=2 ttl=255 time=1 ms<br\/>  Reply from 10.1.1.2: bytes=56 Sequence=3 ttl=255 time=1 msd<br\/>  Reply from 10.1.1.2: bytes=56 Sequence=4 ttl=255 time=1 ms<br\/>  Reply from 10.1.1.2: bytes=56 Sequence=5 ttl=255 time=1 ms<br\/> <br\/>  --- 10.1.1.2 ping statistics ---<br\/>  5 packet(s) transmitted<br\/>  5 packet(s) received<br\/>  0.00% packet loss<br\/>  round-trip min\/avg\/max = 1\/1\/1 ms<br\/><br\/><\/pre>\n\n<p>Test with a BGP session and adjacent OSPFv2 and OSPFv3:<\/p>\n\n<pre class=\"wp-block-preformatted\">&lt;HUAWEI&gt;displ bgp peer<br\/> <br\/>  BGP local router ID : 192.168.88.100<br\/>  Local AS number : 11111<br\/>  Total number of peers : 1 Peers in established state : 1<br\/> <br\/>  Peer V AS MsgRcvd MsgSent OutQ Up\/Down State PrefRcv<br\/>  10.1.1.2 4 22222 25 25 0 00:19:38 Established 0<br\/><br\/>&lt;HUAWEI&gt;displ ospf peer brief<br\/> <br\/>(M) Indicates MADJ neighbor<br\/> <br\/> <br\/>  OSPF Process 1 with Router ID 10.0.0.1<br\/>  Peer Statistic Information<br\/>Total number of peer(s): 1<br\/>  Peer(s) in full state: 1<br\/>-----------------------------------------------------------------------------<br\/>  Area Id Interface Neighbor id State<br\/>  0.0.0.0 VE0\/2\/101.100 10.0.0.2 Full<br\/><br\/>&lt;HUAWEI&gt; displ ospfv3 peer<br\/>  OSPFv3 Process (1)<br\/>  OSPFv3 Area (0.0.0.0)<br\/>  Neighbor ID Pri State Dead Time Interface Instance ID<br\/>  10.0.0.1 1 Full\/DR 00:00:38 VE0\/2\/201.100 0<br\/><\/pre>\n\n<p>Finally that&#8217;s it folks, we don&#8217;t know the performance or impact on the box, but the basic services worked normally.<\/p>\n<p>&nbsp;<\/p>\n<p>If you test it with traffic, let us know! Share your results with us.<\/p>\n<p>&nbsp;<\/p>\n<p>Hugs,<\/p>\n<p>&nbsp;<\/p>\n<p>Rafael Ganascim, Gabriel Henrique and Kevin Walters<\/p>\n<p>IT Consulting Team &#8211; Made4it<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The other way to link&#8230; Interconnecting two VS via VPN VPWS CCC # Admin-VS ! Side L2 Admin-VS Virtual-Ethernet0\/2\/100 interface ve-group 100 l2-terminate Virtual-Ethernet0\/2\/100,100 interface vlan-type dot1q 100 ! Side L2 VS1 Virtual-Ethernet0\/2\/200 interface ve-group 200 l2-terminate Virtual-Ethernet0\/2\/200.100 interface vlan-type dot1q 100 ! MPLS CCC VPWS Interconnectionccc test interface Virtual-Ethernet0\/2\/100,100 tagged out-interface Virtual-Ethernet0\/2\/200,100 tagged # [&hellip;]<\/p>\n","protected":false},"author":13,"featured_media":8512,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"postBodyCss":"","postBodyMargin":[],"postBodyPadding":[],"postBodyBackground":{"backgroundType":"classic","gradient":""},"footnotes":""},"categories":[530,296,531],"tags":[532,536,454,533,534,538,537,535],"class_list":["post-11773","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-huawei-en","category-network","category-routers","tag-huawei-en","tag-huawei-interconnection","tag-huawei-ne20-en","tag-huawei-ne40-en","tag-huawei-virtual-router","tag-interconnecting-huawei-virtual-system","tag-interconnecting-huawei-vs","tag-vs-huawei-en"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/made4it.com.br\/en\/wp-json\/wp\/v2\/posts\/11773","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/made4it.com.br\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/made4it.com.br\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/made4it.com.br\/en\/wp-json\/wp\/v2\/users\/13"}],"replies":[{"embeddable":true,"href":"https:\/\/made4it.com.br\/en\/wp-json\/wp\/v2\/comments?post=11773"}],"version-history":[{"count":0,"href":"https:\/\/made4it.com.br\/en\/wp-json\/wp\/v2\/posts\/11773\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/made4it.com.br\/en\/wp-json\/wp\/v2\/media\/8512"}],"wp:attachment":[{"href":"https:\/\/made4it.com.br\/en\/wp-json\/wp\/v2\/media?parent=11773"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/made4it.com.br\/en\/wp-json\/wp\/v2\/categories?post=11773"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/made4it.com.br\/en\/wp-json\/wp\/v2\/tags?post=11773"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}