IPSECManager
- class SoftLayer.managers.IPSECManager(client)[source]
Manage SoftLayer IPSEC VPN tunnel contexts.
This provides helpers to manage IPSEC contexts, private and remote subnets, and NAT translations.
- Parameters:
client (SoftLayer.API.BaseClient) – the client instance
account (SoftLayer.API.BaseClient) – account service client
context (SoftLayer.API.BaseClient) – tunnel context client
customer_subnet (SoftLayer.API.BaseClient) – remote subnet client
Methods
__init__
(client)add_internal_subnet
(context_id, subnet_id)Add an internal subnet to a tunnel context.
add_remote_subnet
(context_id, subnet_id)Adds a remote subnet to a tunnel context.
add_service_subnet
(context_id, subnet_id)Adds a service subnet to a tunnel context.
apply_configuration
(context_id)Requests network configuration for a tunnel context.
cancel_item
(identifier, immediate, reason)Cancels the specified billing item Ipsec.
create_remote_subnet
(account_id, identifier, ...)Creates a remote subnet on the given account.
create_translation
(context_id, static_ip, ...)Creates an address translation on a tunnel context/
delete_remote_subnet
(subnet_id)Deletes a remote subnet from the current account.
get_translation
(context_id, translation_id)Retrieves a translation entry for the given id values.
get_translations
(context_id)Retrieves all translation entries for a tunnel context.
get_tunnel_context
(context_id, **kwargs)Retrieves the network tunnel context instance.
get_tunnel_contexts
(**kwargs)Retrieves network tunnel module context instances.
order
(datacenter, item_package)Create a ipsec.
remove_internal_subnet
(context_id, subnet_id)Remove an internal subnet from a tunnel context.
remove_remote_subnet
(context_id, subnet_id)Removes a remote subnet from a tunnel context.
remove_service_subnet
(context_id, subnet_id)Removes a service subnet from a tunnel context.
remove_translation
(context_id, translation_id)Removes a translation entry from a tunnel context.
resolve_ids
(identifier)Takes a string and tries to resolve to a list of matching ids.
update_translation
(context_id, translation_id)Updates an address translation entry using the given values.
update_tunnel_context
(context_id[, ...])Updates a tunnel context using the given values.
Attributes
resolvers
- add_internal_subnet(context_id, subnet_id)[source]
Add an internal subnet to a tunnel context.
- Parameters:
context_id (int) – The id-value representing the context instance.
subnet_id (int) – The id-value representing the internal subnet.
- Return bool:
True if internal subnet addition was successful.
- add_remote_subnet(context_id, subnet_id)[source]
Adds a remote subnet to a tunnel context.
- Parameters:
context_id (int) – The id-value representing the context instance.
subnet_id (int) – The id-value representing the remote subnet.
- Return bool:
True if remote subnet addition was successful.
- add_service_subnet(context_id, subnet_id)[source]
Adds a service subnet to a tunnel context.
- Parameters:
context_id (int) – The id-value representing the context instance.
subnet_id (int) – The id-value representing the service subnet.
- Return bool:
True if service subnet addition was successful.
- apply_configuration(context_id)[source]
Requests network configuration for a tunnel context.
- Parameters:
context_id (int) – The id-value representing the context instance.
- Return bool:
True if the configuration request was successfully queued.
- cancel_item(identifier, immediate, reason)[source]
Cancels the specified billing item Ipsec.
Example:
# Cancels ipsec id 1234 result = mgr.cancel_item(billing_item_id=1234)
- Parameters:
billing_id (int) – The ID of the billing item to be cancelled.
reason (string) – The reason code for the cancellation. This should come from
get_cancellation_reasons()
.immediate (bool) – If set to True, will automatically update the cancelation ticket to request the resource be reclaimed asap. This request still has to be reviewed by a human
- Returns:
True on success or an exception
- create_remote_subnet(account_id, identifier, cidr)[source]
Creates a remote subnet on the given account.
- Parameters:
account_id (string) – The account identifier.
identifier (string) – The network identifier of the remote subnet.
cidr (string) – The CIDR value of the remote subnet.
- Return dict:
Mapping of properties for the new remote subnet.
- create_translation(context_id, static_ip, remote_ip, notes)[source]
Creates an address translation on a tunnel context/
- Parameters:
context_id (int) – The id-value representing the context instance.
static_ip (string) – The IP address value representing the internal side of the translation entry,
remote_ip (string) – The IP address value representing the remote side of the translation entry,
notes (string) – The notes to supply with the translation entry,
- Return dict:
Mapping of properties for the new translation entry.
- delete_remote_subnet(subnet_id)[source]
Deletes a remote subnet from the current account.
- Parameters:
subnet_id (string) – The id-value representing the remote subnet.
- Return bool:
True if subnet deletion was successful.
- get_translation(context_id, translation_id)[source]
Retrieves a translation entry for the given id values.
- Parameters:
context_id (int) – The id-value representing the context instance.
translation_id (int) – The id-value representing the translation instance.
- Return dict:
Mapping of properties for the translation entry.
- Raises:
SoftLayerAPIError – If a translation cannot be found.
- get_translations(context_id)[source]
Retrieves all translation entries for a tunnel context.
- Parameters:
context_id (int) – The id-value representing the context instance.
- Return list(dict):
Translations associated with the given context
- get_tunnel_context(context_id, **kwargs)[source]
Retrieves the network tunnel context instance.
- Parameters:
context_id (int) – The id-value representing the context instance.
- Return dict:
Mapping of properties for the tunnel context.
- Raises:
SoftLayerAPIError – If a context cannot be found.
- get_tunnel_contexts(**kwargs)[source]
Retrieves network tunnel module context instances.
- Return list(dict):
Contexts associated with the current account.
- order(datacenter, item_package)[source]
Create a ipsec.
- Parameters:
datacenter (string) – the datacenter shortname
item_package (string[]) – items array
- remove_internal_subnet(context_id, subnet_id)[source]
Remove an internal subnet from a tunnel context.
- Parameters:
context_id (int) – The id-value representing the context instance.
subnet_id (int) – The id-value representing the internal subnet.
- Return bool:
True if internal subnet removal was successful.
- remove_remote_subnet(context_id, subnet_id)[source]
Removes a remote subnet from a tunnel context.
- Parameters:
context_id (int) – The id-value representing the context instance.
subnet_id (int) – The id-value representing the remote subnet.
- Return bool:
True if remote subnet removal was successful.
- remove_service_subnet(context_id, subnet_id)[source]
Removes a service subnet from a tunnel context.
- Parameters:
context_id (int) – The id-value representing the context instance.
subnet_id (int) – The id-value representing the service subnet.
- Return bool:
True if service subnet removal was successful.
- remove_translation(context_id, translation_id)[source]
Removes a translation entry from a tunnel context.
- Parameters:
context_id (int) – The id-value representing the context instance.
translation_id (int) – The id-value representing the translation.
- Return bool:
True if translation entry removal was successful.
- resolve_ids(identifier)
Takes a string and tries to resolve to a list of matching ids.
What exactly ‘identifier’ can be depends on the resolvers
- Parameters:
identifier (string) – identifying string
- Returns list:
- update_translation(context_id, translation_id, static_ip=None, remote_ip=None, notes=None)[source]
Updates an address translation entry using the given values.
- Parameters:
context_id (int) – The id-value representing the context instance.
template (dict) – A key-value mapping of translation properties.
static_ip (string) – The static IP address value to update.
remote_ip (string) – The remote IP address value to update.
notes (string) – The notes value to update.
- Return bool:
True if the update was successful.
- update_tunnel_context(context_id, friendly_name=None, remote_peer=None, preshared_key=None, phase1_auth=None, phase1_crypto=None, phase1_dh=None, phase1_key_ttl=None, phase2_auth=None, phase2_crypto=None, phase2_dh=None, phase2_forward_secrecy=None, phase2_key_ttl=None)[source]
Updates a tunnel context using the given values.
- Parameters:
context_id (string) – The id-value representing the context.
friendly_name (string) – The friendly name value to update.
remote_peer (string) – The remote peer IP address value to update.
preshared_key (string) – The preshared key value to update.
phase1_auth (string) – The phase 1 authentication value to update.
phase1_crypto (string) – The phase 1 encryption value to update.
phase1_dh (string) – The phase 1 diffie hellman group value to update.
phase1_key_ttl (string) – The phase 1 key life value to update.
phase2_auth (string) – The phase 2 authentication value to update.
phase2_crypto (string) – The phase 2 encryption value to update.
phase2_df (string) – The phase 2 diffie hellman group value to update.
phase2_forward_secriecy (string) – The phase 2 perfect forward secrecy value to update.
phase2_key_ttl (string) – The phase 2 key life value to update.
- Return bool:
True if the update was successful.