Infoblox::DHCP::IPv6Network - DHCP IPv6 Network object


NAME

Infoblox::DHCP::IPv6Network - DHCP IPv6 Network object


DESCRIPTION

When DHCP services are configured on an appliance, a network that it serves must be defined. After a network is created, you can then create all the subnetworks individually or create a parent network that encompasses all the subnetworks. This object allows the user to create IPv6 networks. For IPv4 networks, see Infoblox::DHCP::Network object.


CONSTRUCTOR

  my $network = Infoblox::DHCP::IPv6Network->new(
                  network                               => $ipv6_subnet/prefix,               #Required, when creating an IPv6 network
                  auto_create_reversezone               => "true" | "false",                  #Optional / Default is undefined
                  comment                               => $string| undef,                    #Optional / Default is undefined
                  ddns_domainname                       => $string| undef,                    #Optional / Default is undefined
                  ddns_enable_option_fqdn               => "true" | "false" ,                 #Optional / Default is "false"
                  ddns_generate_hostname                => "true" | "false" | undef,          #Optional / Default is undefined
                  ddns_server_always_updates            => "true" | "false",                  #Optional / Default is "true"
                  ddns_ttl                              => $num,                              #Optional / Default is "0"
                  disable                               => "true" | "false",                  #Optional / Default is "false"
                  domain_name                           => $string,                           #Optional / Default is undefined
                  domain_name_servers                   => "$ipv6addr,$ipv6addr,...",         #Optional / Default is undefined
                  enable_ddns                           => "true" | "false" | undef,          #Optional / Default is undefined
                  enable_ifmap_publishing               => "true" | "false",                  #Optional / Default is undefined
                  extattrs                              => { $string => $extattr, ... },      #Required if 'rir_organization' attribute is defined
                                                                                              Otherwise is optional
                  extensible_attributes                 => { $string => $string | $num, $string => [ $string | $num, ... ], ... }, #Required if 'rir_organization' attribute is defined
                                                                                                                                   #Otherwise is optional
                  members                               => [ $Member1,$Member2,...],          #Optional / Default is empty
                  mgm_private                           => "true" | "false",                  #Optional / Default is "false"
                  network_container                     => $ipv6_subnet/prefix,               #Optional / Default is "/"
                  network_view                          => $NetworkView,                      #Optional / Default is "default" network view
                  options                               => [$Option1,$Option2,...],           #Optional / Default is empty list
                  override_ddns_domainname              => "true" | "false",                  #Optional / Default value is "false"
                  override_ddns_enable_option_fqdn      => "true" | "false",                  #Optional / Default value is "false"
                  override_ddns_generate_hostname       => "true" | "false",                  #Optional / Default value is "false"
                  override_ddns_ttl                     => "true" | "false",                  #Optional / Default value is "false"
                  override_domain_name                  => "true" | "false",                  #Optional / Default value is "false"
                  override_domain_name_servers          => "true" | "false",                  #Optional / Default value is "false"
                  override_mgm_private                  => "true" | "false",                  #Optional / Default value is "false"
                  override_enable_ddns                  => "true" | "false",                  #Optional / Default value is "false"
                  override_enable_ifmap_publishing      => "true" | "false",                  #Optional / Default value is "false"
                  override_options                      => "true" | "false",                  #Optional / Default value is "false"
                  override_preferred_lifetime           => "true" | "false",                  #Optional / Default value is "false"
                  override_recycle_leases               => "true" | "false",                  #Optional / Default value is "false"
                  override_update_dns_on_lease_renewal  => "true" | "false",                  #Optional / Default value is "false"
                  override_valid_lifetime               => "true" | "false",                  #Optional / Default value is "false"
                  preferred_lifetime                    => $num,                              #Optional / Default is "27000"
                  recycle_leases                        => "true" | "false" | undef,          #Optional / Default is undefined
                  rir_organization                      => $rir_org,                          #Optional / An Infoblox::Grid::RIR::Organization object
                  rir_registration_action               => 'NONE' | 'CREATE' | 'MODIFY' | 'DELETE',  # Optional / write-only
                  rir_registration_status               => 'NOT_REGISTERED' | 'REGISTERED',   #Optional / Default is 'NOT_REGISTERED'
                  send_rir_request                      => 'true' | 'false',                  #Optional / write-only
                  delete_reason                         => $string,                           #Optional / write-only
                                                                                              #Required only if 'rir_registration_action' is specified as 'DELETE'
                  shared_network_name                   => $string| undef,                    #Optional / Default is undefined
                  template                              => $string| undef,                    #Optional / Default is undefined
                  update_dns_on_lease_renewal           => "true" | "false",                  #Optional / Default value is "false"
                  valid_lifetime                        => $num,                              #Optional / Default is "43200"
                  zone_associations                     => [$zone1, $zone2, ... ] | undef,    #Optional / Default is an empty list
                  discovery_blackout_setting            => $blackout,                         #Optional
                  port_control_blackout_setting         => $blackout,                         #Optional
                  override_blackout_setting             => "true" | "false",                  #Optional / Default value is "false"
                  same_port_control_discovery_blackout  => "true" | "false",                  #Optional / Default value is "false"
                  subscribe_settings          => $subscribe_settings,                         #Optional / Default is undefined
                  override_subscribe_settings => 'true' | 'false',                            #Optional / Default is 'false'
                  discovery_engine_type       => 'NETMRI' | 'NETWORK_INSIGHT' | 'VDISCOVERY' | 'UNKNOWN' | 'NONE', #Optional / Default is 'NONE'
                  discovered_bridge_domain    => $string,                                     #Optional / Default is undefined
                  discovered_tenant           => $string,                                     #Optional / Default is undefined
               );

You cannot set both extattrs and extensible_attributes attributes at the same time.


SESSION METHODS

This section describes all the methods in an Infoblox::Session module that can apply to a DHCP IPv6 Network object.

Infoblox::Session->add( )

Use this method to add an IPv6 Network object to the Infoblox appliance. See Infoblox::Session->add() for parameters and return values.

Example
 #Adding an IPv6 network.
 #Construct an object
 my $network = Infoblox::DHCP::IPv6Network->new(
        network => "2001::/64",
 );
 # Submit for adding an IPv6 network
 my $response = $session->add( $network );

Infoblox::Session->get( )

Use this method to retrieve all the matching IPv6 Network objects from the Infoblox appliance. See Infoblox::Session->get() for parameters and return values.

'discover_now_status' will not be returned by default, use 'return_methods' to request it if needed.

Key References
 Apply the following attributes to get a specific DHCP IPv6 network object:
  comment                  - Optional. A comment in string format.
  extattrs                 - Optional. A hash reference containing extensible attributes.
  extensible_attributes    - Optional. A hash reference containing extensible attributes.
  network                  - Optional. The IPv6 address and netmask of an IPv6 network in CIDR format.
  network_view             - Optional. The network view in which the network is located. By default, all network views are searched.
  discovered_bridge_domain - Optional. A bridge domain name in string format.
  discovered_tenant        - Optional. A tenant name in string format.
Examples
  my  @result_array = $session->get(
       object        => "Infoblox::DHCP::IPv6Network" ,
       network       => "2001::/64",
       network_view => "default"
  );
  my  @result_array = $session->get(
       object                => "Infoblox::DHCP::IPv6Network" ,
       extensible_attributes => { 'Site' => 'Santa Clara' }
  );
  my  @result_array = $session->get(
       object  => "Infoblox::DHCP::IPv6Network" ,
       comment => "my-comment",
  );
  my @result_array = $session->get(
       object                   => "Infoblox::DHCP::IPv6Network" ,
       discovered_bridge_domain => "domain1",
  );
  my @result_array = $session->get(
       object            => "Infoblox::DHCP::IPv6Network" ,
       discovered_tenant => "tenant1",
  );

Infoblox::Session->modify( )

Use this method to modify an IPv6 Network object in the Infoblox appliance. See Infoblox::Session->modify() for parameters and return values.

Example
 #Use method to modify comment.
 $object->comment("This is a new comment");
 # Submit modification
 my $response = $session->modify( $object );

Infoblox::Session->remove( )

Use this method to remove an object from the Infoblox appliance. See Infoblox::Session->remove() for parameters and return values.

To remove a specific object, first use get() or search() to retrieve the specific object, and then submit this object for removal.

Key References
 remove_options - Optional. A hash reference containing the following attributes:
 +------------------------------------------------------------------------------------------+
 | reason             - Optional. The reason for removing the network in string format with |
 |                      a maximum of 256 bytes.                                             |
 |                      Used when 'rir_organization' attribute has been defined.            |
 | send_rir_request   - Optional. Boolean flag that indicates whether the appliance should  |
 |                      send an API or email request for Regional Internet Registry (RIR).  |
 |                      Used when 'rir_organization' attribute has been defined.            |
 +------------------------------------------------------------------------------------------+
Example
 # Get the object under the same name
my  @result_array = $session->get(
       object        => "Infoblox::DHCP::IPv6Network" ,
       network       => "2001::/64",
       network_view  => "default"
         );
 # find the desired object from the retrieved list.
 my $desired_network = $result_array[0];
 # Submit for removal
 my $response = $session->remove(
     $desired_network,
     remove_options => {'reason' => 'Moved to B3', send_rir_request => 'true'} );

Infoblox::Session->search( )

Use this method to search for a DHCP IPv6 Network object in the Infoblox appliance. See Infoblox::Session->search() for parameters and return values.

'discover_now_status' will not be returned by default, use 'return_methods' to request it if needed.

Key References
 Apply the following attributes to search for a DHCP IPv6 Network object:
  comment                  - Optional. A comment in string format (regular expression).
  extattrs                 - Optional. A hash reference containing extensible attributes.
  extensible_attributes    - Optional. A hash reference containing extensible attributes.
  network                  - Optional. The IPv6 address and netmask of an IPv6 network in CIDR format.
  network_view             - Optional. The network view in which the network is located. By default, all network views are searched.
  discovered_bridge_domain - Optional. A bridge domain name in string format (regular expression).
  discovered_tenant        - Optional. A tenant name in string format (regular expression).

For more information about searching extensible attributes, see Infoblox::Grid::ExtensibleAttributeDef/Searching Extensible Attributes.

Examples
 # search for all DHCP IPv6 Network objects
     my @retrieved_objs = $session->search(
       object       => "Infoblox::DHCP::IPv6Network",
       network      => "2001.*",
       network_view => "default"
     );
 # search IPv6 network by comment
     my @retrieved_objs = $session->search(
       object    => "Infoblox::DHCP::IPv6Network",
       comment   => "my-comment",
     );
 # search for all DHCP IPv6 Network objects defining "Santa Clara" for "Site" extensible attribute
     my @retrieved_objs = $session->search(
       object                => "Infoblox::DHCP::IPv6Network",
       extensible_attributes => { 'Site' => 'Santa Clara' }
     );
 # search network by discovered bridge domain
  my @result_array = $session->search(
       object                   => "Infoblox::DHCP::IPv6Network" ,
       discovered_bridge_domain => "domain.*",
    );
  # search network by discovered tenant
  my @result_array = $session->search(
       object            => "Infoblox::DHCP::IPv6Network" ,
       discovered_tenant => "tenant.*",
    );


METHODS

This section describes all the methods that can be used to configure and retrieve the attribute values of a DHCP IPv6 Network object

auto_create_reversezone( )

Use this method to set the auto_create_reversezone flag of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. This is a write-only attribute and cannot be retrieved after being set.

Parameter

Specify "true" to set the auto_create_reversezone flag or "false" to deactivate/unset it. The default value for this field is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

Example
 # Modify auto_create_reversezone
 $network_container->auto_create_reversezone("true");

comment( )

Use this method to set or retrieve a descriptive comment of an IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Enter a descriptive comment for the network in string format with a maximum of 256 bytes.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 # Get comment
 my $comment = $network->comment();
 # Modify comment
 $network->comment("add an IPv6 network");

cloud_info( )

Use this method to set or retrieve cloud API related information for the Infoblox::DHCP::IPv6Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

The valid value is a Infoblox::Grid::CloudAPI::Info object.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 # Get cloud_info
 my $cloud_info = $network_view->cloud_info();
 # Modify cloud_info
 $network_view->cloud_info($cloud_info_object);

ddns_domainname( )

Use this method to set or retrieve the ddns_domainname value of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Setting this method to a defined value implicitly sets the override_ddns_domainname method to "true". Setting the parameter to undefined causes the appliance to use the grid default and automatically resets the override_ddns_domainname attribute to "false".

Note that when ddns_domainname is set to a defined value and override_ddns_domainname is set to "false", the last operation takes precedence. Thus the sequence $object->ddns_domainname("testdomain"); $object->override_ddns_domainname("false"); will set override_ddns_domainname to "false", and the sequence $object->override_ddns_domainname("false"); $object->ddns_domainname("testdomain"); will result in override_ddns_domainname="true".

Parameter

The dynamic DNS domain name in string format.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get ddns_domainname
 my $ddns_domainname = $network->ddns_domainname();
 #Modify ddns_domainname
 $network->ddns_domainname("test_domain.com");

ddns_enable_option_fqdn( )

Use this method to set or retrieve the ddns_enable_option_fqdn flag of a DHCP IPv6 Network object. This method controls whether the FQDN option sent by the client is to be used, or if the server can automatically generate the FQDN. This setting overrides the upper-level settings.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Setting this method to a defined value implicitly sets the override_ddns_enable_option_fqdn method to "true". Setting the parameter to undefined causes the appliance to use the upper-level setting and automatically resets the override_ddns_enable_option_fqdn attribute to "false".

Note that when ddns_enable_option_fqdn is set to a defined value and override_ddns_enable_option_fqdn is set to "false", the last operation takes precedence. Thus the sequence $object->ddns_enable_option_fqdn("true"); $object->override_ddns_enable_option_fqdn("false"); will set override_ddns_enable_option_fqdn to "false", and the sequence $object->override_ddns_enable_option_fqdn("false"); $object->ddns_enable_option_fqdn("true"); will result in override_ddns_enable_option_fqdn="true".

Parameter

Specify "true" to generate hostname or "false" to deactivate/unset it.The default value for this field is undefined, which indicates that this attribute inherit the member level setting.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 # Get ddns_enable_option_fqdn
 my $ddns_enable_option_fqdn = $network->ddns_enable_option_fqdn()
 # Modify ddns_enable_option_fqdn
 $network->ddns_enable_option_fqdn("true");
 #Un-override
 $network->ddns_enable_option_fqdn(undef);

ddns_generate_hostname( )

Use this method to set or retrieve the ddns_generate_hostname flag of a DHCP IPv6 Network object. Enable this method to allow only the DHCP server for generating hostname. This setting overrides the upper-level settings.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Setting this method to a defined value implicitly sets the override_ddns_generate_hostname method to "true". Setting the parameter to undefined causes the appliance to use the upper-level setting and automatically resets the override_ddns_generate_hostname attribute to "false".

Note that when ddns_generate_hostname is set to a defined value and override_ddns_generate_hostname is set to "false", the last operation takes precedence. Thus the sequence $object->ddns_generate_hostname("true"); $object->override_ddns_generate_hostname("false"); will set override_ddns_generate_hostname to "false", and the sequence $object->override_ddns_generate_hostname("false"); $object->ddns_generate_hostname("true"); will result in override_ddns_generate_hostname="true".

Parameter

Specify "true" to generate a hostname or "false" to deactivate/unset it. The default value for this field is undefined, which indicates that this attribute inherits the member-level setting.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 # Get ddns_generate_hostname
 my $ddns_generate_hostname = $network->ddns_generate_hostname()
 # Modify ddns_generate_hostname
 $network->ddns_generate_hostname("true");
 #Un-override
 $network->ddns_generate_hostname(undef);

ddns_server_always_updates( )

Use this method to set or retrieve the ddns_server_always_updates flag of a DHCP IPv6 Network object. Enable this method to allow only the DHCP server to update DNS, regardless of the requests from the DHCP clients.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Specify "true" to set the flag that enables the DHCP server to always updates DNS or "false" to deactivate/unset it.The default value for this field is "true".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 # Get ddns_server_always_updates
 my $ddns_server_always_updates = $network->ddns_server_always_updates()
 # Modify ddns_server_always_updates
 $network->ddns_server_always_updates("true");

ddns_ttl( )

Use this method to set or retrieve the DNS update Time to Live (TTL) value of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Setting this method to a defined value implicitly sets the override_ddns_ttl method to "true". Setting the parameter to undefined causes the appliance to use the grid default and automatically resets the override_ddns_ttl attribute to "false".

Note that when ddns_ttl is set to a defined value and override_ddns_ttl is set to "false", the last operation takes precedence. Thus the sequence $object->ddns_ttl(12); $object->override_ddns_ttl("false"); will set override_ddns_ttl to "false", and the sequence $object->override_ddns_ttl("false"); $object->ddns_ttl(12); will result in override_ddns_ttl="true".

Parameter

A 32-bit integer (range from 0 to 4294967295) that represents the duration, in seconds, that the update is cached. Zero indicates that the update is not cached. The default value is 0.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get DNS Update ttl
 my $dns_ttl = $network->ddns_ttl();
 #Modify DNS Update ttl
 $network->ddns_ttl(1200);

disable( )

Use this method to set or retrieve the disable flag of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Specify "true" to set the disable flag or "false" to deactivate/unset it. The default value for this field is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 # Get disable
 my $disable = $network->disable()
 # Modify disable
 $network->disable("true");

discovered_bridge_domain( )

Use this method to set or retrieve the discovered bridge domain name of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

The desired bridge domain name in a string format.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get bridge domain
 my $bridge_domain = $network->discovered_bridge_domain();
 #Modify bridge domain
 $network->discovered_bridge_domain("Domain");

discovered_tenant( )

Use this method to set or retrieve the discovered tenant name of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

The desired tenant name in a string format.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get tenant
 my $tenant = $network->discovered_tenant();
 #Modify tenant
 $network->discovered_tenant("Tenant");

discovery_basic_poll_setting( )

Use this method to set or retrieve the discovery_basic_poll_setting value of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value.

Parameter

The valid value is object of the Infoblox::Grid::Discovery::BasicPollSettings manpage.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get discovery_basic_poll_setting
 my $discovery_basic_poll_setting = $network->discovery_basic_poll_setting();
 #Modify discovery_basic_poll_setting
 $network->discovery_basic_poll_setting($poll_setting);

discovery_member( )

Use this method to set or retrieve the discovery_member value of a DHCP IPv6 Network object.

Parameter

The discovery member name in string format.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get discovery_member
 my $discovery_member = $network->discovery_member();
 #Modify discovery_member
 $network->discovery_member("test.localdomain");

discover_now_status( )

Use this method to retrieve the current discovery status. This attribute is read-only.

'discover_now_status' will not be returned by default, use 'return_methods' to request it if needed.

Parameter

None.

Returns

The method returns the attribute value that can be 'COMPLETE', 'FAILED', 'NONE', 'PENDING' or 'RUNNING'.

Example
 #Get discover_now_status
 my $discover_now_status = $network->discover_now_status();

discovery_blackout_setting( )

Use this method to set or retrieve the discovery blackout setting.

Setting this method to a defined value implicitly sets the override_blackout_setting method to "true". If port_control_blackout_setting is undefined, setting the parameter to undefined causes the appliance to use the grid default and automatically resets the override_blackout_setting attribute to "false".

Note that when discovery_blackout_setting is set to a defined value and override_blackout_setting is set to "false", the last operation takes precedence. Thus the sequence $network->discovery_blackout_setting($blackout); $network->override_blackout_setting("false"); will set override_blackout_setting to "false", and the sequence $network->override_blackout_setting("false"); $network->discovery_blackout_setting($blackout); will result in override_blackout_setting="true".

Parameter

Valid value is an Infoblox::Grid::Discovery::Properties::BlackoutSetting object.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get discovery_blackout_setting
 my $discovery_blackout_setting = $network->discovery_blackout_setting();
 #Modify discovery_blackout_setting
 $network->discovery_blackout_setting($blackout);

discovery_engine_type( )

Use this method to retrieve the DHCP IPv6 Network discovery engine type. This attribute is read-only.

Parameter

None.

Returns

The method returns the attribute value that can be 'NETMRI', 'NETWORK_INSIGHT', 'VDISCOVERY', 'UNKNOWN' or 'NONE'.

Example
 #Get discovery_engine_type
 my $discovery_engine_type = $network->discovery_engine_type();

domain_name( )

Use this method to set or retrieve the domain_name value of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Setting this method to a defined value implicitly sets the override_domain_name method to "true". Setting the parameter to undefined causes the appliance to use the grid default and automatically resets the override_domain_name attribute to "false".

Note that when domain_name is set to a defined value and override_domain_name is set to "false", the last operation takes precedence. Thus the sequence $object->domain_name("testdomain"); $object->override_domain_name("false"); will set override_domain_name to "false", and the sequence $object->override_domain_name("false"); $object->domain_name("testdomain"); will result in override_domain_name="true".

Parameter

The name of the client's domain for resolving names in DNS in string format.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get domain_name
 my $domain_name = $network->domain_name();
 #Modify domain_name
 $network->domain_name("test_domain.com");

domain_name_servers( )

Use this method to set or retrieve the domain_name_servers value of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Setting this method to a defined value implicitly sets the override_domain_name_servers method to "true". Setting the parameter to undefined causes the appliance to use the grid default and automatically resets the override_domain_name_servers attribute to "false".

Note that when domain_name_servers is set to a defined value and override_domain_name_servers is set to "false", the last operation takes precedence. Thus the sequence $object->domain_name_servers("2001::1,2001::2"); $object->override_domain_name_servers("false"); will set override_domain_name_servers to "false", and the sequence $object->override_domain_name_servers("false"); $object->domain_name_servers("2001::1,2001::2"); will result in override_domain_name_servers="true".

Parameter

The domain name server addresses in IPv6 address format.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get domain_name_servers
 my $domain_name_servers = $network->domain_name_servers();
 #Modify domain_name_servers
 $network->domain_name_servers("2001::1,2001::2");

enable_ddns( )

Use this method to set or retrieve the dynamic DNS updates flag of a DHCP IPv6 Network object. The DHCP server can send DDNS updates to DNS servers in the same grid and to external DNS servers. This setting overrides the member level settings.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Setting this method to a defined value implicitly sets the override_enable_ddns method to "true". Setting the parameter to undefined causes the appliance to use the upper-level default and automatically resets the override_enable_ddns attribute to "false".

Note that when enable_ddns is set to a defined value and override_enable_ddns is set to "false", the last operation takes precedence. Thus the sequence $object->enable_ddns("true"); $object->override_enable_ddns("false"); will set override_enable_ddns to "false", and the sequence $object->override_enable_ddns("false"); $object->enable_ddns("true"); will result in override_enable_ddns="true".

Parameter

Specify "true" to set the dynamic DNS updates flag or "false" to deactivate/unset it. The default value for this field is undefined, which indicates that this attribute inherit the member level setting.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 # Get enable_ddns
 my $enable_ddns = $network->enable_ddns()
 # Modify enable_ddns
 $network->enable_ddns("true");
 # Un-override enable_ddns
 $network->enable_ddns(undef);

enable_discovery( )

Use this method to set or retrieve the enable_discovery value of a DHCP IPv6 Network object. This setting overrides the member level settings.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Setting this method to a defined value implicitly sets the override_enable_discovery method to "true". Setting the parameter to undefined causes the appliance to use the default from the upper level and automatically resets the override_enable_discovery attribute to "false".

Enable this flag if you want to set discovery for this object.

Parameter

Specify "true" to set the enable_discovery flag or "false" to deactivate/unset it. The default value is undefined.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get enable_discovery
 my $enable_discovery = $network->enable_discovery();
 #Modify enable_discovery
 $network->enable_discovery("false");

enable_ifmap_publishing( )

Use this method to set or retrieve the ifmap publishing option of a DHCP IPv6 Network object. This setting overrides the member level settings.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Specify "true" to set ifmap publishing option or "false" to deactivate/unset it. The default value is 'false', which indicates that this attribute inherits the member level setting.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 # Get enable ifmap publishing
 my $enable_ifmap_publishing = $network->enable_ifmap_publishing()
 # Modify enable_ifmap_publishing
 $network->enable_ifmap_publishing("true");
 # Un-override enable_ifmap_publishing
 $network->enable_ifmap_publishing(undef);

enable_immediate_discovery( )

Use this method to set or retrieve enable_immediate_discovery value of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Specify "true" to set the enable_immediate_discovery flag or "false" to deactivate/unset it. The default value is undefined.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get enable_immediate_discovery
 my $enable_immediate_discovery = $network->enable_immediate_discovery();
 #Modify enable_immediate_discovery
 $network->enable_immediate_discovery("false");

endpoint_sources( )

Use this method to retrieve the list of endpoints that provide object data. This is a read-only attribute.

Omit the parameter to retrieve the attribute value.

Parameter

None

Returns

The valid return value is an array of Infoblox::CiscoISE::Endpoint objects.

Example
 #Get endpoint_sources value
 my $endpoint_sources = $object->endpoint_sources();

extattrs( )

Use this method to set or retrieve the extensible attributes associated with an IPv6 Network object.

Parameter

Valid value is a hash reference containing the names of extensible attributes and their associated values ( Infoblox::Grid::Extattr objects ).

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get extattrs
 my $ref_extattrs = $network->extattrs();
 #Modify extattrs
 $network->extattrs({ 'Site' => $extattr1, 'Administrator' => $extattr2 });

extensible_attributes( )

Use this method to set or retrieve the extensible attributes associated with an IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

For valid values for extensible attributes, see Infoblox::Grid::ExtensibleAttributeDef/Extensible Attribute Values.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get extensible attributes
 my $ref_extensible_attributes = $network->extensible_attributes();
 #Modify extensible attributes
 $network->extensible_attributes({ 'Site' => 'Santa Clara', 'Administrator' => [ 'Peter', 'Tom' ] });

members( )

Use this method to set or retrieve the member that serves DHCP for an IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

The valid value is an array reference that contains Infoblox::DHCP::Member objects.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 my $member1 = Infoblox::DHCP::Member->new(
     name     => "infoblox.localdomain",
     ipv4addr => "192.168.1.2",
 );
 #Create the Network object with this member
 my $network = Infoblox::DHCP::Network->new(
     network => "2001::/64",
     members => [$member1],
 );

mgm_private( )

Use this method to set or retrieve the flag that controls whether the object should be synced to the MGM or not.

Setting this method to a defined value implicitly sets the override_blackout_setting method to "true". If discovery_blackout_setting is undefined, setting the parameter to undefined causes the appliance to use the grid default and automatically resets the override_blackout_setting attribute to "false".

Note that when mgm_private is set to a defined value and override_mgm_private is set to "false", the last operation takes precedence. Thus the sequence $network->mgm_private("true"); $network->override_mgm_private("false"); will set override_mgm_private to "false", and the sequence $network->override_mgm_private("false"); $network->mgm_private("true"); will result in override_mgm_private="true".

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Specify 'true' to enable synchronization of the managed Grid with the MGM or 'false' to forbid it. The default value is 'false'.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Note that this member is loaded on on-demand basis, so to retrieve the value the object must have been retrieved from the session first.

Example
 #Get mgm_private value
 my $value = $object->mgm_private();
 #Modify mgm_private value
 $object->mgm_private('true');

mgm_private_overridable( )

Use this method to retrieve the flag that indicates whether the overriding of 'mgm_private' flag is allowed or not. This is a read-only attribute.

Parameter

None

Returns

The method returns the attribute value.

Note that this member is loaded on on-demand basis, so to retrieve the value the object must have been retrieved from the session first.

Example
 #Get mgm_private_overridable value
 my $value = $object->mgm_private_overridable();

ms_ad_user_data( )

Use this method to retrieve Microsoft Active Directory users related information. This is a read-only attribute.

Parameter

None

Returns

The valid return value is an Infoblox::Grid::MSServer::AdUser::Data object.

Example
 #Get ms_ad_user_data
 my $ms_ad_user_data = $v6network->ms_ad_user_data();

network( )

Use this method to retrieve the network attribute of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Specify the address and netmask of the network in CIDR format (example: 2001::/64).

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get network
 my $network = $network->network();

network_container( )

Use this method to set or retrieve the network container of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Specify the address and netmask of the network in CIDR format (example: 2001::/64).

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get network container
 my $network_container = $network->network_container();
 #Modify network container
 $network->network_container("2001::/64");

network_view( )

Use this method to set or retrieve the network view of the IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

The default value is the "default" network view, which means the network is in the default network view.

Parameter

Valid value is a defined Infoblox::DHCP::View object. The default network view value is the system-defined default network view object.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get network view
 my $nview = $network->network_view();
 #Modify network view, with an Infoblox::DHCP::View object
 $network->network_view($nview);

next_available_ip( )

Use this method to retrieve the next available IPv6 address(es) in the network. Note that to use this method, the object MUST be retrieved through a get or search call, or created with an add call.

Parameter

The method accepts the following optional parameters:

  requested_num - The number of IP addresses requested. It must be a number between 1 and 20, inclusive.
  excluded - A reference to an array of addresses to be excluded from the results.
Returns

This method returns the next available IPv6 address(es) in the network. If requested_num is not specified, a string with the next available address will be returned; otherwise, the method will return a reference to an array of addresses.

Within a DHCP IPv6Network object, the next available IP address(es) are the first addresses in this network that match all of the following rules:

   * Are not part of the passed 'excluded' parameter (if specified).
   * There is no AAAA, PTR, fixed address or host address record with this IP address
   * There is no bulk host record with this IP address
   * There is no unmanaged record with this IP address
   * The IP address is not the network or broadcast address of this network
   * The IP address is not in any IPv6 DHCP range within this network (including any exclusion range)
Example
 # Retrieve a particular network
 my @retrieved_objs = $session->get(
                           object   => "Infoblox::DHCP::IPv6Network",
                           network  => "10:9::/64"
 );
 $network = $retrieved_objs[0];
 # Print the next available IPv6 address in the network
 print $network->next_available_ip() . "\n";
 # This will retrieve the next 10 available addresses and print the first one.
 my $addressesref = $network->next_available_ip(requested_num => 10);
 print @$addressesref[0] . "\n";
 # This will retrieve the next 10 available addresses and exclude two addresses.
 my $addressesref = $network->next_available_ip(requested_num => 10, excluded => ["10:9::2", "10:9::3"]);

next_available_network( )

Use this method to retrieve the next available IPv6 network(s). Note that to use this method, the object MUST be retrieved through a get or search call, or it must have been created with an add call.

Parameter

The method accepts the following parameters:

  cidr - (required) The CIDR of the requested networks. It must be a number between 3 and 128, inclusive.
  requested_num - (optional) The number of networks requested.  It must be a number between 1 and 20, inclusive.
  excluded - (optional) A reference to an array of networks to be excluded from the results.
Returns

This method returns the next available IPv6 network(s) . If requested_num is not specified, a string with the next available network will be returned; otherwise, the method will return a reference to an array of networks.

A network cannot be returned as the next available network if it cannot be inserted; such as when any of the following conditions exist:

- It's parent network has a DHCP configuration assigned and therefore cannot be converted to a network container.

- It overlaps with an existing network or network container, regardless of whether the existing network has a greater or smaller CIDR than the requested CIDR.

- Its network address or broadcast address is used by a fixed address or a host configured for DHCP.

Example
 # Retrieve a particular network
 my @retrieved_objs = $session->get(
                           object   => "Infoblox::DHCP::IPv6Network",
                           network  => "2001::/64"
 );
 $network = $retrieved_objs[0];
 # Print the next available IPv6 network in the network
 print $network->next_available_network(cidr => 68) . "\n";
 # This will retrieve the next 10 available networks and print the first one.
 my $addressesref = $network->next_available_network(requested_num => 10, cidr => 68);
 print @$addressesref[0] . "\n";
 # This will retrieve the next 10 available networks and exclude two.
 my $addressesref = $network->next_available_network(requested_num => 10, cidr => 72, excluded => ['2001::100:0:0:0/72','2001::300:0:0:0/72']);

options( )

Use this method to set or retrieve the options value of a member DHCP server. DHCP options provide network configuration settings and various services available on the network for DHCP.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Setting this method to a defined value implicitly sets the override_options method to "true". Setting the parameter to undefined causes the appliance to use the upper-level default and automatically resets the override_options attribute to "false".

Note that when the options method is set to a defined value and override_options is set to "false", the last operation takes precedence. Thus the sequence $object->options([ $opt ]); $object->override_options("false"); will set override_options to "false", and the sequence $object->override_options("false"); $object->options([ $opt ]); will result in override_options="true".

Parameter

The valid value is an array reference that contains Infoblox::DHCP::Option objects.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get options
 my $options = $network->options();
 #Modify options
 my $option1 = Infoblox::DHCP::Option->new(
     name => "dhcp6.info-refresh-time",
     value => 60
 );
 $network->options([$option1]);

override_ddns_domainname( )

The override_ddns_domainname attribute controls whether the ddns_domainname value in the DHCP IPv6 Network is used, instead of the grid default.

The override_ddns_domainname attribute can be specified explicitly. It is also set implicitly when ddns_domainname is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the grid-level setting for ddns_domainname. Set the parameter to "false" to inherit the grid-level setting for ddns_domainname.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Getting override_ddns_domainname
    my $override_ddns_domainname=$network->override_ddns_domainname( );
    #Modifying override_ddns_domainname
    $network->override_ddns_domainname("true");

override_ddns_enable_option_fqdn( )

The override_ddns_enable_option_fqdn attribute controls whether the ddns_enable_option_fqdn value in the DHCP IPv6 Network is used, instead of the grid default.

The override_ddns_enable_option_fqdn attribute can be specified explicitly. It is also set implicitly when ddns_domainname is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the grid-level setting for ddns_enable_option_fqdn. Set the parameter to "false" to inherit the grid-level setting for ddns_enable_option_fqdn.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Getting override_ddns_enable_option_fqdn
    my $override_ddns_enable_option_fqdn=$network->override_ddns_enable_option_fqdn( );
    #Modifying override_ddns_enable_option_fqdn
    $network->override_ddns_enable_option_fqdn("true");

override_ddns_generate_hostname( )

The override_ddns_generate_hostname attribute controls whether the ddns_generate_hostname value in the DHCP IPv6 Network is used, instead of the grid default.

The override_ddns_generate_hostname attribute can be specified explicitly. It is also set implicitly when ddns_generate_hostname is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the grid-level setting for ddns_generate_hostname. Set the parameter to "false" to inherit the grid-level setting for ddns_generate_hostname.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Getting override_ddns_generate_hostname
    my $override_ddns_generate_hostname=$network->override_ddns_generate_hostname( );
    #Modifying override_ddns_generate_hostname
    $network->override_ddns_generate_hostname("true");

override_ddns_ttl( )

The override_ddns_ttl attribute controls whether the ddns_ttl value in the DHCP IPv6 Network is used, instead of the grid default.

The override_ddns_ttl attribute can be specified explicitly. It is also set implicitly when ddns_ttl is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the grid-level setting for ddns_ttl. Set the parameter to "false" to inherit the grid-level setting for ddns_ttl.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Getting override_ddns_ttl
    my $override_ddns_ttl=$network->override_ddns_ttl( );
    #Modifying override_ddns_ttl
    $network->override_ddns_ttl("true");

override_domain_name( )

The override_domain_name attribute controls whether the domain_name value in the DHCP IPv6 Network is used, instead of the grid default.

The override_domain_name attribute can be specified explicitly. It is also set implicitly when domain_name is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the grid-level setting for domain_name. Set the parameter to "false" to inherit the grid-level setting for domain_name.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Getting override_domain_name
    my $override_domain_name=$network->override_domain_name( );
    #Modifying override_domain_name
    $network->override_domain_name("true");

override_domain_name_servers( )

The override_domain_name_servers attribute controls whether the domain_name_servers value in the DHCP IPv6 Network is used, instead of the grid default.

The override_domain_name_servers attribute can be specified explicitly. It is also set implicitly when domain_name_servers is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the grid-level setting for domain_name_servers. Set the parameter to "false" to inherit the grid-level setting for domain_name_servers.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Getting override_domain_name_servers
    my $override_domain_name_servers=$network->override_domain_name_servers( );
    #Modifying override_domain_name_servers
    $network->override_domain_name_servers("true");

override_blackout_setting( )

The override_blackout_setting attribute controls whether the discovery_blackout_setting and port_control_blackout_setting values in the object are used, instead of the grid default.

The override_blackout_setting attribute can be specified explicitly. It is also set implicitly when discovery_blackout_setting or port_control_blackout_setting is set to a defined value.

Parameter

Specify "true" to set the override_blackout_setting flag or "false" to deactivate/unset it. The default value is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 # Get attribute value
 my $value = $network->override_blackout_setting();
 # Modify attribute value
 $network->override_blackout_setting('true');

override_enable_ddns( )

The override_enable_ddns attribute controls whether the enable_ddns value in the DHCP IPv6 Network is used, instead of the grid default.

The override_enable_ddns attribute can be specified explicitly. It is also set implicitly when enable_ddns is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the grid-level setting for enable_ddns. Set the parameter to "false" to inherit the grid-level setting for enable_ddns.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Getting override_enable_ddns
    my $override_enable_ddns=$network->override_enable_ddns( );
    #Modifying override_enable_ddns
    $network->override_enable_ddns("true");

override_enable_ifmap_publishing( )

The override_enable_ifmap_publishing controls whether the enable_ifmap_publishing in the DHCP IPv6 Network is used, instead of the grid default.

The override_enable_ifmap_publishing can be specified explicitly. It is also set implicitly when enable_ifmap_publishing is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the grid-level setting for enable_ifmap_publishing. Set the parameter to "false" to inherit the grid-level setting for enable_ifmap_publishing.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Getting override_enable_ifmap_publishing
    my $override_enable_ifmap_publishing=$network->override_enable_ifmap_publishing( );
    #Modifying override_enable_ifmap_publishing
    $network->override_enable_ifmap_publishing("true");

override_options( )

The override_options attribute controls whether the options value in the DHCP IPv6 Network is used, instead of the grid default.

The override_options attribute can be specified explicitly. It is also set implicitly when options is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the grid-level setting for options. Set the parameter to "false" to inherit the grid-level setting for options.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Getting override_options
    my $override_options=$network->override_options( );
    #Modifying override_options
    $network->override_options("true");

override_preferred_lifetime( )

The override_preferred_lifetime attribute controls whether the preferred_lifetime value in the DHCP IPv6 Network is used, instead of the grid default.

The override_preferred_lifetime attribute can be specified explicitly. It is also set implicitly when preferred_lifetime is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the grid-level setting for options. Set the parameter to "false" to inherit the grid-level setting for options.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Getting override_preferred_lifetime
    my $override_preferred_lifetime=$network->override_preferred_lifetime( );
    #Modifying override_preferred_lifetime
    $network->override_preferred_lifetime("true");

override_recycle_leases( )

The override_recycle_leases attribute controls whether the recycle_leases value in the DHCP IPv6 Network is used, instead of the grid default.

The override_recycle_leases attribute can be specified explicitly. It is also set implicitly when recycle_leases is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the grid-level setting for options. Set the parameter to "false" to inherit the grid-level setting for options.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Getting override_recycle_leases
    my $override_recycle_leases=$network->override_recycle_leases( );
    #Modifying override_recycle_leases
    $network->override_recycle_leases("true");

override_mgm_private( )

The override_mgm_private attribute controls whether the mgm_private value in the object is used, instead of the parent-level default.

The override_mgm_private attribute can be specified explicitly. It is also set implicitly when mgm_private is set to a defined value.

Note that setting override_mgm_private to 'false' sets the original 'mgm_private' value to 'false'.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to 'true' to override the parent-level setting for mgm_private. Set the parameter to 'false' to inherit the parent-level setting for mgm_private.

The default value of this parameter is 'false'.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Note that this member is loaded on on-demand basis, so to retrieve the value the object must have been retrieved from the session first.

Example
 #Get override_mgm_private value
 my $value = $object->override_mgm_private( );
 #Modify override_mgm_private value
 $object->override_mgm_private('true');

override_subscribe_settings( )

The override_subscribe_settings attribute controls whether the subscribe_settings method values of the member are used, instead of the Grid default.

The override_subscribe_settings attribute can be specified explicitly. It is also set implicitly when subscribe_settings is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the Grid-level setting for subscribe_settings. Set the parameter to "false" to inherit the Grid-level setting for subscribe_settings.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get override_subscribe_settings value
 my $override_subscribe_settings = $object->override_subscribe_settings( );
 #Modify override_subscribe_settings value
 $object->override_subscribe_settings("true");

override_update_dns_on_lease_renewal( )

The override_update_dns_on_lease_renewal attribute controls whether the update_dns_on_lease_renewal value in the DHCP IPv6 Network is used, instead of the grid default.

The override_update_dns_on_lease_renewal attribute can be specified explicitly. It is also set implicitly when update_dns_on_lease_renewal is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the grid-level setting for update_dns_on_lease_renewal. Set the parameter to "false" to inherit the grid-level setting for update_dns_on_lease_renewal.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Getting override_update_dns_on_lease_renewal
    my $override_update_dns_on_lease_renewal=$network->override_update_dns_on_lease_renewal( );
    #Modifying override_update_dns_on_lease_renewal
    $network->override_update_dns_on_lease_renewal("true");

override_valid_lifetime( )

The override_valid_lifetime attribute controls whether the valid_lifetime value in the DHCP IPv6 network is used, instead of the grid default.

The override_valid_lifetime attribute can be specified explicitly. It is also set implicitly when valid_lifetime is set to a defined value.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

Set the parameter to "true" to override the grid-level setting for options. Set the parameter to "false" to inherit the grid-level setting for options.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Getting override_valid_lifetime
    my $override_valid_lifetime=$network->override_valid_lifetime( );
    #Modifying override_valid_lifetime
    $network->override_valid_lifetime("true");

preferred_lifetime ( )

Use this method to set or retrieve the preferred lifetime value of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Setting this method to a defined value implicitly sets the override_preferred_lifetime method to "true". Setting the parameter to undefined causes the appliance to use the grid default and automatically resets the override_preferred_lifetime attribute to "false".

Note that when preferred_lifetime is set to a defined value and override_preferred_lifetime is set to "false", the last operation takes precedence. Thus the sequence $object->preferred_lifetime(691200); $object->override_preferred_lifetime("false"); will set override_preferred_lifetime to "false", and the sequence $object->override_preferred_lifetime("false"); $object->preferred_lifetime(691200); will result in override_preferred_lifetime="true".

Parameter

A 32-bit integer (valid range from 1 to 4294967295) that represents the lifetime, in seconds. The default value is 27000.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get Preferred lifetime
 my $preferred_lifetime = $network->preferred_lifetime();
 #Modify Preferred lifetime
 $network->preferred_lifetime(864000);

port_control_blackout_setting

Use this method to set or retrieve the port control blackout setting.

Setting this method to a defined value implicitly sets the override_blackout_setting method to "true". If discovery_blackout_setting is undefined, setting the parameter to undefined causes the appliance to use the grid default and automatically resets the override_blackout_setting attribute to "false".

Note that when port_control_blackout_setting is set to a defined value and override_blackout_setting is set to "false", the last operation takes precedence. Thus the sequence $network->port_control_blackout_setting($blackout); $network->override_blackout_setting("false"); will set override_blackout_setting to "false", and the sequence $network->override_blackout_setting("false"); $network->port_control_blackout_setting($blackout); will result in override_blackout_setting="true".

Parameter

Valid value is an Infoblox::Grid::Discovery::Properties::BlackoutSetting object.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get port_control_blackout_setting
 my $port_control_blackout_setting = $network->port_control_blackout_setting();
 #Modify port_control_blackout_setting
 $network->port_control_blackout_setting($blackout);

recycle_leases( )

Use this method to set or retrieve the recycle_leases flag at the network level.

If the flag is enabled, the leases are kept in the recycle bin until one week after expiration. When the flag is disabled, the leases are irrecoverably deleted.

Setting this method to a defined value implicitly sets the override_recycle_leases method to "true". Setting the parameter to undefined causes the appliance to use the grid default and automatically resets the override_recycle_leases attribute to "false".

Note that when recycle_leases is set to a defined value and override_recycle_leases is set to "false", the last operation takes precedence. Thus the sequence $object->recycle_leases("true"); $object->override_recycle_leases("false"); will set override_recycle_leases to "false", and the sequence $objct->override_recycle_leases("false"); $object->recycle_leases("true"); will result in override_recycle_leases="true".

Parameter

Specify "true" to enable the recycle_leases flag or "false" to disable it. The default value is undefined.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get recycle_leases
 my $recycle_leases = $network->recycle_leases();
 #Modify recycle_leases
 $network->recycle_leases("false");

restart_if_needed( )

Use this method to set the flag that indicates whether DHCP service should be restarted on a member that is serving DHCP for the changed object referenced in a cloud API request.

Parameter

Specify true to restart the DHCP service.

Returns

None

Example
 # Modify
 $network->restart_if_needed('true');

rir( )

Use this method to retrieve the name of the Regional Internet Registry (RIR) that allocated this address space. This is a read-only attribute.

Parameter

None

Returns

The method returns the attribute value that can be 'RIPE' or 'NONE'.

Example
 #Get rir
 my $rir = $network->rir();

rir_organization( )

Use this method to set or retrieve the Regional Internet Registry (RIR) organization object.

Parameter

An Infoblox::Grid::RIR::Organization object.

You must enable support for RIR/SWIP at the Grid level before you can set attribute values. See Infoblox::Grid->enable_rir_swip() method.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get rir_organization
 my $rir_organization = $network->rir_organization();
 #Modify rir_organization
 $network->rir_organization($rir_org);

rir_registration_action( )

Use this method to set the registration action of Regional Internet Registry (RIR). This is a write-only attribute.

Parameter

Valid values are 'NONE', 'CREATE', 'MODIFY' or 'DELETE'.

Returns

The method returns true when the modification succeeds, and returns false when the operation fails.

Example
 #Set rir_registration_action
 $network->rir_registration_action('CREATE');

rir_registration_status( )

Use this method to set or retrieve the registration status of Regional Internet Registry (RIR).

Parameter

The registration status of Regional Internet Registry (RIR), which can be 'REGISTERED' or 'NOT_REGISTERED'.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get rir_registration_status
 my $rir_registration_status = $network->rir_registration_status();
 #Modify rir_registration_status
 $network->rir_registration_status('NOT_REGISTERED');

last_rir_registration_update_sent( )

Use this method to retrieve the last registration update timestamp of Regional Internet Registry (RIR). This is a read-only attribute.

Parameter

None

Returns

The method returns the attribute value.

Example
 #Get last_rir_registration_update_sent
 my $last_rir_registration_update_sent = $network->last_rir_registration_update_sent();

last_rir_registration_update_status( )

Use this method to retrieve the last registration update status of Regional Internet Registry (RIR). This is a read-only attribute.

Parameter

None

Returns

The method returns the attribute value.

Example
 #Get last_rir_registration_update_status
 my $last_rir_registration_update_status = $network->last_rir_registration_update_status();

same_port_control_discovery_blackout( )

Use this method to set or retrieve the flag that enables using the same discovery blackout for port control blackout.

Parameter

Specify 'true' to use same discovery blackout for port control blackout or 'false' to disable it. The default value is 'false'.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 # Get attribute value
 my $value = $network->same_port_control_discovery_blackout();
 # Modify attribute value
 $network->same_port_control_discovery_blackout('true');

send_rir_request( )

Use this method to set the flag that indicates whether the appliance should send an API or email request for Regional Internet Registry (RIR). This is a write-only attribute.

Parameter

Specify "true" to set the send_rir_request flag or "false" to unset it.

Returns

The method returns true when the modification succeeds, and returns false when the operation fails.

Example
 #Set send_rir_request
 $network->send_rir_request('true');

delete_reason( )

Use this method to specify the reason for deleting the Regional Internet Registry (RIR) registration request. This is a write-only attribute. This field is required only if 'rir_registration_action' is specified as 'DELETE'.

Parameter

The reason for deleting the RIR registration request in string format with a maximum of 256 bytes.

Returns

The method returns true when the modification succeeds, and returns false when the operation fails.

Example
 #Set delete_reason
 $network->delete_reason('invalid');

shared_network_name( )

Use this method to retrieve the name of the shared network associated with the DHCP IPv6 Network object.

Parameter

none

Returns

The method returns the name of shared network.

Example
 #Get shared_network_name
 my $shared_network_name = $network->shared_network_name();

subscribe_settings( )

Use this method to set or retrieve the Cisco ISE subscribe settings.

Setting this method to a defined value implicitly sets the override_subscribe_settings method to "true". Setting the parameter to undefined causes the appliance to use the Cisco ISE endpoint default and automatically resets the override_subscribe_settings method to "false".

Note that when subscribe_settings is set to a defined value and override_subscribe_settings is set to "false", the last operation takes precedence. Thus the sequence $object->subscribe_settings($value); $object->override_subscribe_settings("false"); will set override_subscribe_settings to "false", and the sequence $object->override_subscribe_settings("false"); $object->subscribe_settings($value); will result in override_subscribe_settings="true".

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

The valid value is an Infoblox::CiscoISE::SubscribeSetting object.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get subscribe_settings value
 my $subscribe_settings = $object->subscribe_settings();
 #Modify subscribe_settings value
 $object->subscribe_settings($settings);

template( )

Use this method to set or retrieve the network template name of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Parameter

The valid name in string format.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get template
 my $template = $network->template();
 #Modify template
 $network->template("Template_Name");

unmanaged( )

Use this method to set or retrieve the network status, which indicates whether the network is unmanaged or not.

Parameter

Specify true to mark the network as unmanaged or false as managed.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 # Get network status
 $unmanaged = $network->unmanaged();
 # Modify network status
 $network->unmanaged('true');

update_dns_on_lease_renewal( )

The update_dns_on_lease_renewal attribute controls whether the DHCP server updates DNS when a DHCP lease is renewed.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Setting this method to a defined value implicitly sets the override_update_dns_on_lease_renewal method to "true". Setting the parameter to undefined causes the appliance to use the grid default and automatically resets the override_update_dns_on_lease_renewal attribute to "false".

Note that when update_dns_on_lease_renewal is set to a defined value and override_update_dns_on_lease_renewal is set to "false", the last operation takes precedence. Thus the sequence $object->update_dns_on_lease_renewal("true"); $object->override_update_dns_on_lease_renewal("false"); will set override_update_dns_on_lease_renewal to "false", and the sequence $object->override_update_dns_on_lease_renewal("false"); $object->update_dns_on_lease_renewal("true"); will result in override_update_dns_on_lease_renewal="true".

Parameter

Specify "true" to set the update_dns_on_lease_renewal flag or "false" to deactivate/unset it.

The default value of this parameter is "false".

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
    #Get update_dns_on_lease_renewal
    my $update_dns_on_lease_renewal=$network->update_dns_on_lease_renewal( );
    #Modify update_dns_on_lease_renewal
    $network->update_dns_on_lease_renewal("true");

valid_lifetime ( )

Use this method to set or retrieve the valid lifetime value of a DHCP IPv6 Network object.

Include the specified parameter to set the attribute value. Omit the parameter to retrieve the attribute value.

Setting this method to a defined value implicitly sets the override_valid_lifetime method to "true". Setting the parameter to undefined causes the appliance to use the grid default and automatically resets the override_valid_lifetime attribute to "false".

Note that when valid_lifetime is set to a defined value and override_valid_lifetime is set to "false", the last operation takes precedence. Thus the sequence $object->valid_lifetime(691200); $object->override_valid_lifetime("false"); will set override_valid_lifetime to "false", and the sequence $object->override_valid_lifetime("false"); $object->valid_lifetime(691200); will result in override_valid_lifetime="true".

Parameter

A 32-bit integer (valid range from 1 to 4294967295) that represents the valid lifetime, in seconds. The default value is 43200.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails.

If you did not specify a parameter, the method returns the attribute value.

Example
 #Get valid lifetime
 my $valid_lifetime = $network->valid_lifetime();
 #Modify valid lifetime
 $network->valid_lifetime(864000);

zone_associations( )

Use this method to set or retrieve the associated zone information.

Parameter

The valid value is an array reference that contains Infoblox::DNS::Zone object(s). The default value is an empty list. If the network has a parent, it is possible to use the zone associations of the parent by setting the parameter to undef.

Returns

If you specified a parameter, the method returns true when the modification succeeds, and returns false when the operation fails. If you did not specify a parameter, the method returns the attribute value.

Examples
 #Getting zone associations
 my $zone_associations = $network->zone_associations();
 my $zone1 = Infoblox::DNS::Zone->new(
        name     => "test1.com",
 );
 my $zone2 = Infoblox::DNS::Zone->new(
        name     => "test2.com",
    );
 #Modifying zone_associations
 $network->zone_associations([$zone1, $zone2]);
 #Clear zone_assocations
 $network->zone_associations([]);
 ##Remove the override for zone_associations
 $network->zone_associations(undef)


SAMPLE CODE

The following sample code demonstrates the different functions that can be applied to an object such as add, search, modify, and remove. This sample also includes error handling for the operations.

#Preparation prior to a DHCP IPv6 Network insertion

 #PROGRAM STARTS: Include all the modules that will be used
 use strict;
 use Infoblox;
 #Create a session to the Infoblox appliance
 my $session = Infoblox::Session->new(
     master   => "192.168.1.2",
     username => "admin",
     password => "infoblox"
 );
 unless ($session) {
    die("Construct session failed: ",
        Infoblox::status_code() . ":" . Infoblox::status_detail());
 }
 print "Session created successfully\n";

#Create a DHCP IPv6 Network object

 my  $network = Infoblox::DHCP::IPv6Network->new(
                network => "2001::/64",
                comment => "add network",
              );
 my $response = $session->add($network)
        or die("Add Network failed: ",
              $session->status_code() . ":" . $session->status_detail());
 print "Network added successfully\n";
 #Search for a specific Network
 #Search the network
 my @retrieved_objs = $session->search(
     object  => "Infoblox::DHCP::IPv6Network",
     network => "2001.*"
 );
 my $object = $retrieved_objs[0];
 unless ($object) {
     die("Search Network failed: ",
         $session->status_code() . ":" . $session->status_detail());
 }
 print "Search Network found at least 1 matching entry\n";

#Get and modify a Network attribute

 #Get IPv6 Network through the session
 my @retrieved_objs = $session->get(
            object =>"Infoblox::DHCP::IPv6Network" ,
            network => "2001::"
         );
 my $object = $retrieved_objs[0];
 unless ($object) {
     die("Get Network object failed: ",
         $session->status_code() . ":" . $session->status_detail());
 }
 print "Get Network found at least 1 matching entry\n";

#Modify one of the attributes of the specified IPv6 Network

 $object->comment("This is a new comment"); #Apply the changes
 $session->modify($object)
     or die("Modify Network attribute failed: ",
            $session->status_code() . ":" . $session->status_detail());
 print "Network object modified successfully \n";

#Remove an IPv6 Network Object

  #Get IPv6 Network object through the session
  my @retrieved_objs = $session->get(
            object  => "Infoblox::DHCP::IPv6Network" ,
            network => "2001::"
        );
    my $object = $retrieved_objs[0];
    unless ($object) {
     die("Get Network object failed: ",
         $session->status_code() . ":" . $session->status_detail());
     }
 print "Get Network object found at least 1 matching entry\n";

#Submit the object for removal

 $session->remove($object)
     or die("Remove Network failed: ",
         $session->status_code() . ":" . $session->status_detail());
 print "Network removed successfully \n";
 ####PROGRAM ENDS####


AUTHOR

Infoblox Inc. http://www.infoblox.com/


SEE ALSO

Infoblox::Session, Infoblox::DHCP::View, Infoblox::DHCP::IPv6NetworkContainer, Infoblox::DHCP::Network, Infoblox::DHCP::NetworkContainer, Infoblox::Session->get(), Infoblox::Session->search(), Infoblox::Session->add(), Infoblox::Session->remove(), Infoblox::Session->modify(), Infoblox::Grid::MSServer::AdUser::Data


COPYRIGHT

Copyright (c) 2017 Infoblox Inc.