Hosted Public Virtual Interface
Provides a Direct Connect hosted public virtual interface resource. This resource represents the allocator's side of the hosted virtual interface. A hosted virtual interface is a virtual interface that is owned by another AWS account.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const foo = new aws.directconnect.HostedPublicVirtualInterface("foo", {
connectionId: "dxcon-zzzzzzzz",
name: "vif-foo",
vlan: 4094,
addressFamily: "ipv4",
bgpAsn: 65352,
customerAddress: "175.45.176.1/30",
amazonAddress: "175.45.176.2/30",
routeFilterPrefixes: [
"210.52.109.0/24",
"175.45.176.0/22",
],
});
import pulumi
import pulumi_aws as aws
foo = aws.directconnect.HostedPublicVirtualInterface("foo",
connection_id="dxcon-zzzzzzzz",
name="vif-foo",
vlan=4094,
address_family="ipv4",
bgp_asn=65352,
customer_address="175.45.176.1/30",
amazon_address="175.45.176.2/30",
route_filter_prefixes=[
"210.52.109.0/24",
"175.45.176.0/22",
])
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var foo = new Aws.DirectConnect.HostedPublicVirtualInterface("foo", new()
{
ConnectionId = "dxcon-zzzzzzzz",
Name = "vif-foo",
Vlan = 4094,
AddressFamily = "ipv4",
BgpAsn = 65352,
CustomerAddress = "175.45.176.1/30",
AmazonAddress = "175.45.176.2/30",
RouteFilterPrefixes = new[]
{
"210.52.109.0/24",
"175.45.176.0/22",
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/directconnect"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := directconnect.NewHostedPublicVirtualInterface(ctx, "foo", &directconnect.HostedPublicVirtualInterfaceArgs{
ConnectionId: pulumi.String("dxcon-zzzzzzzz"),
Name: pulumi.String("vif-foo"),
Vlan: pulumi.Int(4094),
AddressFamily: pulumi.String("ipv4"),
BgpAsn: pulumi.Int(65352),
CustomerAddress: pulumi.String("175.45.176.1/30"),
AmazonAddress: pulumi.String("175.45.176.2/30"),
RouteFilterPrefixes: pulumi.StringArray{
pulumi.String("210.52.109.0/24"),
pulumi.String("175.45.176.0/22"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.directconnect.HostedPublicVirtualInterface;
import com.pulumi.aws.directconnect.HostedPublicVirtualInterfaceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var foo = new HostedPublicVirtualInterface("foo", HostedPublicVirtualInterfaceArgs.builder()
.connectionId("dxcon-zzzzzzzz")
.name("vif-foo")
.vlan(4094)
.addressFamily("ipv4")
.bgpAsn(65352)
.customerAddress("175.45.176.1/30")
.amazonAddress("175.45.176.2/30")
.routeFilterPrefixes(
"210.52.109.0/24",
"175.45.176.0/22")
.build());
}
}
resources:
foo:
type: aws:directconnect:HostedPublicVirtualInterface
properties:
connectionId: dxcon-zzzzzzzz
name: vif-foo
vlan: 4094
addressFamily: ipv4
bgpAsn: 65352
customerAddress: 175.45.176.1/30
amazonAddress: 175.45.176.2/30
routeFilterPrefixes:
- 210.52.109.0/24
- 175.45.176.0/22
Import
Using pulumi import
, import Direct Connect hosted public virtual interfaces using the VIF id
. For example:
$ pulumi import aws:directconnect/hostedPublicVirtualInterface:HostedPublicVirtualInterface test dxvif-33cc44dd
Properties
The address family for the BGP peer. ipv4
or ipv6
.
The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers.
The authentication key for BGP configuration.
The ID of the Direct Connect connection (or LAG) on which to create the virtual interface.
The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers.
The AWS account that will own the new virtual interface.
A list of routes to be advertised to the AWS network in this region.