HostedPublicVirtualInterfaceArgs

data class HostedPublicVirtualInterfaceArgs(val addressFamily: Output<String>? = null, val amazonAddress: Output<String>? = null, val bgpAsn: Output<Int>? = null, val bgpAuthKey: Output<String>? = null, val connectionId: Output<String>? = null, val customerAddress: Output<String>? = null, val name: Output<String>? = null, val ownerAccountId: Output<String>? = null, val routeFilterPrefixes: Output<List<String>>? = null, val vlan: Output<Int>? = null) : ConvertibleToJava<HostedPublicVirtualInterfaceArgs>

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

Constructors

Link copied to clipboard
constructor(addressFamily: Output<String>? = null, amazonAddress: Output<String>? = null, bgpAsn: Output<Int>? = null, bgpAuthKey: Output<String>? = null, connectionId: Output<String>? = null, customerAddress: Output<String>? = null, name: Output<String>? = null, ownerAccountId: Output<String>? = null, routeFilterPrefixes: Output<List<String>>? = null, vlan: Output<Int>? = null)

Properties

Link copied to clipboard
val addressFamily: Output<String>? = null

The address family for the BGP peer. ipv4 or ipv6.

Link copied to clipboard
val amazonAddress: Output<String>? = null

The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers.

Link copied to clipboard
val bgpAsn: Output<Int>? = null

The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration.

Link copied to clipboard
val bgpAuthKey: Output<String>? = null

The authentication key for BGP configuration.

Link copied to clipboard
val connectionId: Output<String>? = null

The ID of the Direct Connect connection (or LAG) on which to create the virtual interface.

Link copied to clipboard
val customerAddress: Output<String>? = null

The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers.

Link copied to clipboard
val name: Output<String>? = null

The name for the virtual interface.

Link copied to clipboard
val ownerAccountId: Output<String>? = null

The AWS account that will own the new virtual interface.

Link copied to clipboard
val routeFilterPrefixes: Output<List<String>>? = null

A list of routes to be advertised to the AWS network in this region.

Link copied to clipboard
val vlan: Output<Int>? = null

The VLAN ID.

Functions

Link copied to clipboard
open override fun toJava(): HostedPublicVirtualInterfaceArgs