1. Packages
  2. Packet
  3. API Docs
  4. ReservedIpBlock
Packet v3.2.2 published on Thursday, Nov 12, 2020 by Pulumi

packet.ReservedIpBlock

Explore with Pulumi AI

packet logo
Packet v3.2.2 published on Thursday, Nov 12, 2020 by Pulumi

    Provides a resource to create and manage blocks of reserved IP addresses in a project.

    When a user provisions first device in a facility, Packet API automatically allocates IPv6/56 and private IPv4/25 blocks. The new device then gets IPv6 and private IPv4 addresses from those block. It also gets a public IPv4/31 address. Every new device in the project and facility will automatically get IPv6 and private IPv4 addresses from these pre-allocated blocks. The IPv6 and private IPv4 blocks can’t be created, only imported. With this resource, it’s possible to create either public IPv4 blocks or global IPv4 blocks.

    Public blocks are allocated in a facility. Addresses from public blocks can only be assigned to devices in the facility. Public blocks can have mask from /24 (256 addresses) to /32 (1 address). If you create public block with this resource, you must fill the facility argmument.

    Addresses from global blocks can be assigned in any facility. Global blocks can have mask from /30 (4 addresses), to /32 (1 address). If you create global block with this resource, you must specify type = “global_ipv4” and you must omit the facility argument.

    Once IP block is allocated or imported, an address from it can be assigned to device with the packet.IpAttachment resource.

    Create ReservedIpBlock Resource

    new ReservedIpBlock(name: string, args: ReservedIpBlockArgs, opts?: CustomResourceOptions);
    @overload
    def ReservedIpBlock(resource_name: str,
                        opts: Optional[ResourceOptions] = None,
                        description: Optional[str] = None,
                        facility: Optional[str] = None,
                        project_id: Optional[str] = None,
                        quantity: Optional[int] = None,
                        type: Optional[str] = None)
    @overload
    def ReservedIpBlock(resource_name: str,
                        args: ReservedIpBlockArgs,
                        opts: Optional[ResourceOptions] = None)
    func NewReservedIpBlock(ctx *Context, name string, args ReservedIpBlockArgs, opts ...ResourceOption) (*ReservedIpBlock, error)
    public ReservedIpBlock(string name, ReservedIpBlockArgs args, CustomResourceOptions? opts = null)
    public ReservedIpBlock(String name, ReservedIpBlockArgs args)
    public ReservedIpBlock(String name, ReservedIpBlockArgs args, CustomResourceOptions options)
    
    type: packet:ReservedIpBlock
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args ReservedIpBlockArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ReservedIpBlockArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ReservedIpBlockArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ReservedIpBlockArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ReservedIpBlockArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    ReservedIpBlock Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The ReservedIpBlock resource accepts the following input properties:

    ProjectId string

    The packet project ID where to allocate the address block

    Quantity int

    The number of allocated /32 addresses, a power of 2

    Description string

    Arbitrary description

    Facility string

    Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4

    Type string

    Either "global_ipv4" or "public_ipv4", defaults to "public_ipv4" for backward compatibility

    ProjectId string

    The packet project ID where to allocate the address block

    Quantity int

    The number of allocated /32 addresses, a power of 2

    Description string

    Arbitrary description

    Facility string

    Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4

    Type string

    Either "global_ipv4" or "public_ipv4", defaults to "public_ipv4" for backward compatibility

    projectId String

    The packet project ID where to allocate the address block

    quantity Integer

    The number of allocated /32 addresses, a power of 2

    description String

    Arbitrary description

    facility String

    Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4

    type String

    Either "global_ipv4" or "public_ipv4", defaults to "public_ipv4" for backward compatibility

    projectId string

    The packet project ID where to allocate the address block

    quantity number

    The number of allocated /32 addresses, a power of 2

    description string

    Arbitrary description

    facility Facility

    Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4

    type IpBlockType

    Either "global_ipv4" or "public_ipv4", defaults to "public_ipv4" for backward compatibility

    project_id str

    The packet project ID where to allocate the address block

    quantity int

    The number of allocated /32 addresses, a power of 2

    description str

    Arbitrary description

    facility str

    Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4

    type str

    Either "global_ipv4" or "public_ipv4", defaults to "public_ipv4" for backward compatibility

    projectId String

    The packet project ID where to allocate the address block

    quantity Number

    The number of allocated /32 addresses, a power of 2

    description String

    Arbitrary description

    facility

    Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4

    type

    Either "global_ipv4" or "public_ipv4", defaults to "public_ipv4" for backward compatibility

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ReservedIpBlock resource produces the following output properties:

    Address string
    AddressFamily int

    Address family as integer (4 or 6)

    Cidr int

    length of CIDR prefix of the block as integer

    CidrNotation string

    Address and mask in CIDR notation, e.g. "147.229.15.30/31"

    Gateway string
    Global bool

    boolean flag whether addresses from a block are global (i.e. can be assigned in any facility)

    Id string

    The provider-assigned unique ID for this managed resource.

    Manageable bool
    Management bool
    Netmask string

    Mask in decimal notation, e.g. "255.255.255.0"

    Network string

    Network IP address portion of the block specification

    Public bool

    boolean flag whether addresses from a block are public

    Address string
    AddressFamily int

    Address family as integer (4 or 6)

    Cidr int

    length of CIDR prefix of the block as integer

    CidrNotation string

    Address and mask in CIDR notation, e.g. "147.229.15.30/31"

    Gateway string
    Global bool

    boolean flag whether addresses from a block are global (i.e. can be assigned in any facility)

    Id string

    The provider-assigned unique ID for this managed resource.

    Manageable bool
    Management bool
    Netmask string

    Mask in decimal notation, e.g. "255.255.255.0"

    Network string

    Network IP address portion of the block specification

    Public bool

    boolean flag whether addresses from a block are public

    address String
    addressFamily Integer

    Address family as integer (4 or 6)

    cidr Integer

    length of CIDR prefix of the block as integer

    cidrNotation String

    Address and mask in CIDR notation, e.g. "147.229.15.30/31"

    gateway String
    global Boolean

    boolean flag whether addresses from a block are global (i.e. can be assigned in any facility)

    id String

    The provider-assigned unique ID for this managed resource.

    manageable Boolean
    management Boolean
    netmask String

    Mask in decimal notation, e.g. "255.255.255.0"

    network String

    Network IP address portion of the block specification

    public_ Boolean

    boolean flag whether addresses from a block are public

    address string
    addressFamily number

    Address family as integer (4 or 6)

    cidr number

    length of CIDR prefix of the block as integer

    cidrNotation string

    Address and mask in CIDR notation, e.g. "147.229.15.30/31"

    gateway string
    global boolean

    boolean flag whether addresses from a block are global (i.e. can be assigned in any facility)

    id string

    The provider-assigned unique ID for this managed resource.

    manageable boolean
    management boolean
    netmask string

    Mask in decimal notation, e.g. "255.255.255.0"

    network string

    Network IP address portion of the block specification

    public boolean

    boolean flag whether addresses from a block are public

    address str
    address_family int

    Address family as integer (4 or 6)

    cidr int

    length of CIDR prefix of the block as integer

    cidr_notation str

    Address and mask in CIDR notation, e.g. "147.229.15.30/31"

    gateway str
    global_ bool

    boolean flag whether addresses from a block are global (i.e. can be assigned in any facility)

    id str

    The provider-assigned unique ID for this managed resource.

    manageable bool
    management bool
    netmask str

    Mask in decimal notation, e.g. "255.255.255.0"

    network str

    Network IP address portion of the block specification

    public bool

    boolean flag whether addresses from a block are public

    address String
    addressFamily Number

    Address family as integer (4 or 6)

    cidr Number

    length of CIDR prefix of the block as integer

    cidrNotation String

    Address and mask in CIDR notation, e.g. "147.229.15.30/31"

    gateway String
    global Boolean

    boolean flag whether addresses from a block are global (i.e. can be assigned in any facility)

    id String

    The provider-assigned unique ID for this managed resource.

    manageable Boolean
    management Boolean
    netmask String

    Mask in decimal notation, e.g. "255.255.255.0"

    network String

    Network IP address portion of the block specification

    public Boolean

    boolean flag whether addresses from a block are public

    Look up Existing ReservedIpBlock Resource

    Get an existing ReservedIpBlock resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ReservedIpBlockState, opts?: CustomResourceOptions): ReservedIpBlock
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            address: Optional[str] = None,
            address_family: Optional[int] = None,
            cidr: Optional[int] = None,
            cidr_notation: Optional[str] = None,
            description: Optional[str] = None,
            facility: Optional[str] = None,
            gateway: Optional[str] = None,
            global_: Optional[bool] = None,
            manageable: Optional[bool] = None,
            management: Optional[bool] = None,
            netmask: Optional[str] = None,
            network: Optional[str] = None,
            project_id: Optional[str] = None,
            public: Optional[bool] = None,
            quantity: Optional[int] = None,
            type: Optional[str] = None) -> ReservedIpBlock
    func GetReservedIpBlock(ctx *Context, name string, id IDInput, state *ReservedIpBlockState, opts ...ResourceOption) (*ReservedIpBlock, error)
    public static ReservedIpBlock Get(string name, Input<string> id, ReservedIpBlockState? state, CustomResourceOptions? opts = null)
    public static ReservedIpBlock get(String name, Output<String> id, ReservedIpBlockState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Address string
    AddressFamily int

    Address family as integer (4 or 6)

    Cidr int

    length of CIDR prefix of the block as integer

    CidrNotation string

    Address and mask in CIDR notation, e.g. "147.229.15.30/31"

    Description string

    Arbitrary description

    Facility string

    Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4

    Gateway string
    Global bool

    boolean flag whether addresses from a block are global (i.e. can be assigned in any facility)

    Manageable bool
    Management bool
    Netmask string

    Mask in decimal notation, e.g. "255.255.255.0"

    Network string

    Network IP address portion of the block specification

    ProjectId string

    The packet project ID where to allocate the address block

    Public bool

    boolean flag whether addresses from a block are public

    Quantity int

    The number of allocated /32 addresses, a power of 2

    Type string

    Either "global_ipv4" or "public_ipv4", defaults to "public_ipv4" for backward compatibility

    Address string
    AddressFamily int

    Address family as integer (4 or 6)

    Cidr int

    length of CIDR prefix of the block as integer

    CidrNotation string

    Address and mask in CIDR notation, e.g. "147.229.15.30/31"

    Description string

    Arbitrary description

    Facility string

    Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4

    Gateway string
    Global bool

    boolean flag whether addresses from a block are global (i.e. can be assigned in any facility)

    Manageable bool
    Management bool
    Netmask string

    Mask in decimal notation, e.g. "255.255.255.0"

    Network string

    Network IP address portion of the block specification

    ProjectId string

    The packet project ID where to allocate the address block

    Public bool

    boolean flag whether addresses from a block are public

    Quantity int

    The number of allocated /32 addresses, a power of 2

    Type string

    Either "global_ipv4" or "public_ipv4", defaults to "public_ipv4" for backward compatibility

    address String
    addressFamily Integer

    Address family as integer (4 or 6)

    cidr Integer

    length of CIDR prefix of the block as integer

    cidrNotation String

    Address and mask in CIDR notation, e.g. "147.229.15.30/31"

    description String

    Arbitrary description

    facility String

    Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4

    gateway String
    global Boolean

    boolean flag whether addresses from a block are global (i.e. can be assigned in any facility)

    manageable Boolean
    management Boolean
    netmask String

    Mask in decimal notation, e.g. "255.255.255.0"

    network String

    Network IP address portion of the block specification

    projectId String

    The packet project ID where to allocate the address block

    public_ Boolean

    boolean flag whether addresses from a block are public

    quantity Integer

    The number of allocated /32 addresses, a power of 2

    type String

    Either "global_ipv4" or "public_ipv4", defaults to "public_ipv4" for backward compatibility

    address string
    addressFamily number

    Address family as integer (4 or 6)

    cidr number

    length of CIDR prefix of the block as integer

    cidrNotation string

    Address and mask in CIDR notation, e.g. "147.229.15.30/31"

    description string

    Arbitrary description

    facility Facility

    Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4

    gateway string
    global boolean

    boolean flag whether addresses from a block are global (i.e. can be assigned in any facility)

    manageable boolean
    management boolean
    netmask string

    Mask in decimal notation, e.g. "255.255.255.0"

    network string

    Network IP address portion of the block specification

    projectId string

    The packet project ID where to allocate the address block

    public boolean

    boolean flag whether addresses from a block are public

    quantity number

    The number of allocated /32 addresses, a power of 2

    type IpBlockType

    Either "global_ipv4" or "public_ipv4", defaults to "public_ipv4" for backward compatibility

    address str
    address_family int

    Address family as integer (4 or 6)

    cidr int

    length of CIDR prefix of the block as integer

    cidr_notation str

    Address and mask in CIDR notation, e.g. "147.229.15.30/31"

    description str

    Arbitrary description

    facility str

    Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4

    gateway str
    global_ bool

    boolean flag whether addresses from a block are global (i.e. can be assigned in any facility)

    manageable bool
    management bool
    netmask str

    Mask in decimal notation, e.g. "255.255.255.0"

    network str

    Network IP address portion of the block specification

    project_id str

    The packet project ID where to allocate the address block

    public bool

    boolean flag whether addresses from a block are public

    quantity int

    The number of allocated /32 addresses, a power of 2

    type str

    Either "global_ipv4" or "public_ipv4", defaults to "public_ipv4" for backward compatibility

    address String
    addressFamily Number

    Address family as integer (4 or 6)

    cidr Number

    length of CIDR prefix of the block as integer

    cidrNotation String

    Address and mask in CIDR notation, e.g. "147.229.15.30/31"

    description String

    Arbitrary description

    facility

    Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4

    gateway String
    global Boolean

    boolean flag whether addresses from a block are global (i.e. can be assigned in any facility)

    manageable Boolean
    management Boolean
    netmask String

    Mask in decimal notation, e.g. "255.255.255.0"

    network String

    Network IP address portion of the block specification

    projectId String

    The packet project ID where to allocate the address block

    public Boolean

    boolean flag whether addresses from a block are public

    quantity Number

    The number of allocated /32 addresses, a power of 2

    type

    Either "global_ipv4" or "public_ipv4", defaults to "public_ipv4" for backward compatibility

    Package Details

    Repository
    Packet pulumi/pulumi-packet
    License
    Apache-2.0
    Notes

    This Pulumi package is based on the packet Terraform Provider.

    packet logo
    Packet v3.2.2 published on Thursday, Nov 12, 2020 by Pulumi