> ## Documentation Index
> Fetch the complete documentation index at: https://docs.megaport.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Connecting MVEs Integrated with Aruba EdgeConnect SD-WAN

> This help topic describes how to connect two Megaport Virtual Edges (MVEs) integrated with Aruba EdgeConnect SD-WAN.

export const Anchor = ({name}) => {
  const errorPrefix = '\x1b[31;1;4mERROR\x1b[0m: Anchor -';
  if (name === undefined || name === null || name === 'undefined') {
    console.error(`${errorPrefix} \`name\` must have a value — rendering an empty string instead`);
    return <></>;
  }
  const raw = typeof name === 'string' ? name : JSON.stringify(name);
  const id = raw.replace(/\s+/g, '-').replace(/[^A-Za-z0-9_-]/g, '').replace(/-+/g, '-').replace(/^-+|-+$/g, '');
  if (!id) {
    console.error(`${errorPrefix} \`name\` "${name}" sanitizes to an empty id — rendering an empty string instead`);
    return <></>;
  }
  return <a style={{
    scrollMarginTop: 'var(--scroll-mt)'
  }} id={id}></a>;
};

export const Gloss = ({term, anchor, langDir = 'en'}) => {
  const errorPrefix = '\x1b[31;1;4mERROR\x1b[0m: Gloss -';
  if (typeof term !== 'string') {
    term = String(term);
  }
  if (typeof anchor !== 'string') {
    anchor = String(anchor);
  }
  if (!term || term === 'undefined') {
    console.error(`${errorPrefix} the \`term\` property is required — rendering an empty string instead`);
    return <></>;
  }
  if (!anchor || anchor === 'undefined') {
    console.error(`${errorPrefix} the \`anchor\` property is required — rendering an empty string instead`);
    return <></>;
  }
  const lang = langDir === 'en' ? '/' : '/' + langDir + '/';
  const glossaryPage = lang + 'glossary/#' + anchor;
  return <a href={glossaryPage}>{term}</a>;
};

export const Image = ({src, alt = '', caption, width, height, shadow}) => {
  const errorPrefix = '\x1b[31;1;4mERROR\x1b[0m: Image -';
  if (typeof src !== 'string') {
    src = String(src);
  }
  if (!src || src === 'undefined') {
    console.error(`${errorPrefix} \`src\` is required — rendering an empty string instead`);
    return <></>;
  }
  const img = <img className={['mega-image-style', shadow ? 'shadow' : ''].join(' ')} src={src} alt={alt} width={width} height={height} style={{
    display: 'block'
  }} />;
  return caption ? <figure>
      {img}
      <figcaption style={{
    textAlign: 'center',
    width
  }}>{caption}</figcaption>
    </figure> : img;
};

export const Link = ({href, children}) => {
  const errorPrefix = '\x1b[31;1;4mERROR\x1b[0m: Link -';
  if (typeof href !== 'string') {
    href = String(href);
  }
  if (!href || href === 'undefined') {
    console.error(`${errorPrefix} the \`href\` property is required — rendering an empty string instead`);
    return <></>;
  }
  if (href.includes('{') || href.toUpperCase().includes('%7B')) {
    console.error(`${errorPrefix} could not resolve a variable in href "${href}" — rendering an empty string instead`);
    return <></>;
  }
  const isExternal = (/^https?:\/\//).test(href);
  return <a href={href} className="link" target={isExternal ? '_blank' : undefined} rel={isExternal ? 'noreferrer' : undefined}>
      {children ?? href}
      {isExternal && <span className="sr-only"> (opens in a new tab)</span>}
    </a>;
};

This topic describes how to connect a Megaport Virtual Edge (MVE) integrated with Aruba EdgeConnect SD-WAN to another MVE.

This deployment uses the Megaport private software-defined network (SDN) to reduce reliance on the internet and connect enterprise branch locations.

<Image src="/images/mve/branch-to-branch.png" alt="Branch to branch" width={800} />

With two MVEs configured, you can create a private VXC to connect them on the Megaport network without the need for any physical infrastructure. A VXC is essentially a private point-to-point Ethernet connection between an A-End MVE and a B-End MVE.

<Note>
  The internet-facing interface on an MVE can reach the internet-facing interface on another MVE over the public internet. That is, you can exchange traffic from MVE to MVE in different metros over the internet. The basic connection model consists of an MVE at one metro connecting via a Megaport Internet connection to an MVE at another metro. Connectivity consists of a customer/SD-WAN partner-managed connection, not Megaport managed. For more information, see [Megaport Internet Overview](/megaport-internet).
</Note>

## Before you begin

Provision two MVEs in different locations. If you haven't already created MVEs, see [Creating an MVE in Aruba](/mve/aruba/creating).

## Creating a VXC between two MVEs

A private VXC deployment between two MVEs integrated with Aruba starts in the Megaport Portal. To complete the configuration, you use the Aruba Orchestrator console.

**To create a VXC**

1. In the <Link href="https://portal.megaport.com">Megaport Portal</Link>, go to the **Services** page and click **+Connection** next to the originating A-End MVE.

2. Select Private VXC.

   <Image src="/images/mve/mve-to-mve-private.png" alt="Private VXC" shadow={true} width={740} />

3. Select the destination B-End MVE and location.\
   You can use the Select Destination Port search field to narrow the selection.

4. Click **Next**.

5. Specify the connection details:

   * **Connection Name** -- The name of your VXC to be shown in the <Link href="https://portal.megaport.com">Megaport Portal</Link>. Specify a name for the VXC that is easily identifiable, for example, `LA MVE 2 to Dallas MVE 4`. You can change the name later, if you like.

   * **Service Level Reference** (optional) -- Specify a unique identifying number for your Megaport service to be used for billing purposes, such as a cost center number, unique customer ID, or purchase order number. The service level reference number appears for each service under the Product section of the invoice. You can also edit this field for an existing service.

   * **Rate Limit** -- The speed of your connection in Mbps. The maximum speed is displayed. Although the rate limit for a VXC can be up to several Gbps, the compute capacity of the A-End or B-End MVE can influence the circuit throughput. Consult Aruba’s documentation for more information.

   * **VXC State** -- Select **Enabled** or **Shut Down** to define the initial state of the connection. For more information, see [Shutting Down a VXC for Failover Testing](/connections/shut-down-vxc).

     <Note>
       If you select **Shut Down**, traffic will not flow through this service and it will behave as if it was down on the Megaport network. Billing for this service will remain active and you will still be charged for this connection.
     </Note>

   * **vNIC selection** -- Depending on the definition of the MVEs you are using, you might have to specify A-End and B-End vNICs.

     * **A-End vNIC** -- Specify a vNIC by using the pre-populated default, or select from the drop-down list.

     * **B-End vNIC** -- Specify a vNIC by using the pre-populated default, or select from the drop-down list.

       For more information about vNIC selection when connecting MVEs with different services, see [Types of vNIC Connections](/mve/vnic-connections).

   * **Preferred A-End VLAN** -- Specify the 802.1q VLAN tag for this connection for the A-End. To specify a VLAN ID, select **Tagged** and enter the ID in the **Specify VLAN ID** field.\
     Each VXC is delivered as a separate VLAN on the MVE. The VLAN ID must be unique on this MVE and can range from 2 to 4093. If you specify a VLAN ID that is already in use, the system displays the next available VLAN number. The VLAN ID must be unique to proceed with the order. If you don’t specify a value, Megaport will assign one.

   * **Preferred B-End VLAN** -- Specify the 802.1q VLAN tag for this connection that you will receive through the B-End VLAN.

   * **Minimum Term** -- Select No Minimum Term, 12 Months, 24 Months, 36 Months, 48 Months, or 60 Months. Longer terms result in a lower monthly rate. *12 Months* is selected by default. Take note of the information on the screen to avoid early termination fees (ETF).

     Enable the [Minimum Term Renewal](/portal-admin/auto-renew/#auto-renew) option for services with a 12, 24, 36, 48 or 60-month term to automatically renew the contract at the same discounted price and term length at the end of the contract. If you don't renew the contract, at the end of the term,  the contract will automatically roll over to month-to-month contract for the following billing period, at the same price, without term discounts.

     For more information, see [VXC Pricing and Contract Terms](/finance/vxc-pricing) and [VXC, Megaport Internet, and IX Billing](/finance/billing-details).

   * **Resource Tags** -- You can use resource tags to add your own reference metadata to a Megaport service.\
     To add a tag:
     1. Click **Add Tags**.
     2. Click  **Add New Tag**.
     3. Enter details into the fields:
        * **Key** -- string maximum length 128. Valid values are a-z 0-9 \_ : . / \ -
        * **Value** -- string maximum length 256. Valid values are a-z A-Z 0-9 \_ : . @ / + \ - (space)
     4. Click **Save**.
        If you already have resource tags for that service, you can manage them by clicking **Manage Tags**.
     <Warning>
       Never include sensitive information in a resource tag. Sensitive information includes commands that return existing tag definitions and information that will identify a person or company.
     </Warning>

6. Click **Next** to view the Summary page.

7. Click **Add VXC** to move this configuration to your cart.

8. Repeat these steps to provision any additional VXCs.

9. Click **Review Order** to proceed through the checkout process, or click **Save** to save the configured services before placing the order.

10. Review the Important Information section and confirm agreement with the Service Agreements.

    If you do not have a promotion code, skip to the **Order Now** step. If you do have a promotion code, enter it into the **Enter discount code** field then click **Apply**. Alternatively, if a code already appears in the **Discounts** field, verify it is correct and click **Apply**.

    The promotional discount appears below the Standard Term discount.  This discount is not reflected in the Monthly Rate shown here, it is applied at the time of billing.  If an invalid or expired code causes an error with your order, contact your Megaport Account Manager for a replacement code.

    <Image src="/images/snippets/add-promo-code.png" alt="Add Promo Code" shadow={true} width={750} />

    If you entered an incorrect promotion code, you can remove it by clicking **Remove**.

11. Click **Order Now**.

Once the VXC is deployed, you can view it in the Megaport Portal Services page. The Services page displays the VXC under the A-End MVE and the B-End MVE. Note that the service identifier number is the same for the VXC at both ends of the connection.

The next step is to configure the A-End and B-End MVEs in Aruba Orchestrator.

<Note>
  The next procedure configures IP connectivity with BGP, providing just one solution out of many. Consult your SD-WAN vendor documentation for specific network design and configuration options before configuring interfaces for the MVEs.
</Note>

## Configuring the A-End MVE in Orchestrator

After you create the VXC between your MVEs, you need to configure it in Orchestrator. This involves configuring LAN interfaces.

**To configure the A-End appliance**

1. Log in to your enterprise Aruba Orchestrator system.

2. Choose Configuration > Discovery | Discovered Appliances or click **Appliances Discovered** on the upper right of the screen.

3. Select the A-End MVE.

4. Go to the System menu and choose Interface.

5. Choose Configuration > Networking | Deployment.

6. Locate the appliance by the hostname and click the Edit (pencil) icon.
   <Image src="/images/mve/aruba/aruba-edit-icon.png" alt="Edit appliance" shadow={true} width={700} />

7. Add a new LAN side interface: Click **+Add** next to LAN Interfaces.

   <Note>
     If this is the first LAN side service connection, click **+Add**. If you already have a LAN interface, click **+IP** under the Interface drop-down list to add a new configuration.
   </Note>

   Here is a screen with sample values.

   <Image src="/images/mve/aruba/aruba-add-interface.png" alt="Aruba LAN interface details" shadow={true} width={900} />

8. In the Interface drop-down menu, choose *wan0*.

9. In the **VLAN** field, enter the A-End VLAN value for this connection from the Megaport Portal.\
   Click the Details icon for the connection in the Megaport Portal to find this value. Note that it might be different from the B-End VLAN ID.

10. (Optional) Select a preconfigured Label or select None.

11. In the **IP/Mask** field, enter the A-End interface IP Address and subnet mask as required for your network.

12. For the Next Hop, enter the B-End IP address.

13. Specify in and out bandwidth values.\
    The bandwidth must be equal to or less than the MVE bandwidth limit.

14. Click **Apply**.

15. If prompted, reboot the appliance.\
    At this point, the A-End interface is created. Once the device is reachable from Orchestrator, you can configure a Border Gateway Protocol (BGP) session.

To set up the MVEs to exchange routing information, follow the steps in [To configure BGP in Orchestrator](#configureBGP).

## Configuring the B-End MVE in Orchestrator

1. Log in to your enterprise Aruba Orchestrator system.

2. Choose Configuration > Discovery | Discovered Appliances or click **Appliances Discovered** on the upper right of the screen.

3. Select the B-End MVE.

4. Go to the System menu and choose Interface.

5. Choose Configuration > Networking | Deployment.

6. Locate the appliance by the hostname and click the Edit (pencil) icon.
   <Image src="/images/mve/aruba/aruba-edit-icon.png" alt="Edit appliance" shadow={true} width={700} />

7. Add a new LAN side Interface: Click **+Add** next to LAN Interfaces.

   <Note>
     If this is the first LAN side service connection, click **+Add**. If you already have a LAN interface, click **+IP** under the Interface drop-down list to add a new configuration.
   </Note>

   Here is a screen with sample values.

   <Image src="/images/mve/aruba/aruba-add-interface.png" alt="Aruba LAN interface details" shadow={true} width={900} />

8. In the Interface drop-down menu, choose *wan0*.

9. In the **VLAN** field, enter the B-End VLAN value for this connection from the Megaport Portal.\
   Click the Details icon for the connection in the Megaport Portal to find this value. Note that it might be different from the A-End VLAN ID.

10. (Optional) Select a preconfigured Label or select None.

11. In the **IP/Mask** field, enter the B-End interface IP Address and subnet mask as required for your network.\
    This value is the Customer Address from the AWS connection details in the Portal.

12. For the Next Hop, enter the A-End IP address.

13. Specify in and out bandwidth values.\
    The bandwidth must be equal to or less than the MVE bandwidth limit.

14. Click **Apply**.

15. If prompted, reboot the appliance.\
    A reboot is required only when adding the first LAN interface, as the system switches the appliance from server mode to router mode.

At this point, the B-End interface is created. The next step is to optionally create a Border Gateway Protocol (BGP) session.

**To configure a BGP neighbor** (optional)<Anchor name="configureBGP" />

1. In Orchestrator, go to Configuration > Networking | BGP.

2. Click the Edit (pencil) icon for the appliance.

3. Move the slider to **Enable BGP**.

4. Provide the local AS number.\
   This is the Customer ASN (your local MVE), collected in step 1.

5. In the **Router ID** field, enter a system IP as required by your network design.\
   You can use any IP address on the MVE, such as the loopback 0 IP specified during the initial acceptance of the appliance, the interface IP on the MVE side of the VXC, or the transit IP address.
   <Image src="/images/mve/aruba/aruba-enable-bgp.png" alt="Add BGP peer for Aruba" shadow={true} width={800} />

6. In the BGP Peers section, click **Add** and provide the following information:
   * **Peer IP** -- Enter the neighbor/peer IP address.
   * **Local Interface** -- Choose the associated LAN interface (the interface is in the format *wan0.\{VLAN ID}*).
   * **Peer ASN** -- Enter the peer ASN.
   * **Peer Type** -- Choose Branch.
   * **Enable <Gloss term="MD5" anchor="md5" /> Password** -- If required, select this and then enter and confirm your MD5 password.
   <Image src="/images/mve/aruba/aruba-add-bgp-peer.png" alt="Add BGP peer for Aruba" shadow={true} width={500} />

7. Click **Add**.

8. Click **Apply**.\
   It takes several seconds for the configuration to be pushed to the appliance. Click the refresh icon to update the data from the appliance.

When successful, the Peer State indicates *Established*:

<Image src="/images/mve/aruba/aruba-bgp-status-established.png" alt="BGP peer state for Aruba" shadow={true} width={1000} />

## Validating your connection

You can review connection details, including the connection state, from the CLI with these commands:

* `show interface wan0.<subinterface id>` -- Displays configuration details and current status for the appliances.
* `show bgp neighbors` or `show bgp summary` -- Displays configuration details and current status for the BGP neighbors.

**To start a CLI session from Orchestrator**

1. In Orchestrator, use the mouse to hover over the appliance and click the Appliance Menu icon to the right of the appliance name.
   <Image src="/images/mve/aruba/cli-appliance-menu.png" alt="BGP peer state for Aruba" shadow={true} width={600} />

2. Choose CLI Session from the menu.
   <Image src="/images/mve/aruba/cli-cli-session.png" alt="BGP peer state for Aruba" shadow={true} width={600} />

3. Enter **enable** mode to use the recommended CLI commands to display configuration details.
