I dont know if it's only on my environement, but i get a error when i tried to use function 'interface_id' from a endpoint when this endpoint is set with DHCP :
engine = Engine("FOO")
for i in engine.interface:
pprint(i.data.data)
{'aggregate_mode': 'none',
'arp_entry': [],
'cvi_mode': 'none',
'dhcp_server_on_interface': {'default_gateway': 'X.X.X.X',
'default_lease_time': 36000,
'dhcp_address_range': 'X.X.X.X-X.X.X.X',
'dhcp_range_per_node': [],
'domain_name_search_list': 'x;x;x;x',
'primary_dns_server': 'X.X.X.X',
'secondary_dns_server': 'X.X.X.X'},
'duplicate_address_detection': True,
'include_prefix_info_option_flag': False,
'interface_id': '4',
'interfaces': [{'single_node_interface': {'address': 'X.X.X.X',
'apn': 'internet',
'auth_request': True,
'auth_request_source': False,
'automatic_default_route': False,
'backup_heartbeat': False,
'backup_mgt': False,
'domain_specific_dns_queries_source': False,
'dynamic': False,
'igmp_mode': 'none',
'key': 268444176,
'network_value': 'X.X.X.X/25',
'nicid': '4',
'nodeid': 1,
'outgoing': True,
'phone_number': '*99#',
'pppoa': False,
'pppoe': False,
'primary_heartbeat': False,
'primary_mgt': False,
'relayed_by_dhcp': False,
'reverse_connection': False,
'vrrp': False,
'vrrp_id': -1,
'vrrp_priority': -1}}],
'key': 268444809,
'link': [{'href': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/physical_interface/268444809',
'rel': 'self',
'type': 'physical_interface'}],
'lldp_mode': 'disabled',
'log_moderation': [],
'managed_address_flag': False,
'mtu': -1,
'name': 'Interface 4',
'other_configuration_flag': False,
'override_engine_settings': False,
'override_log_moderation_settings': False,
'qos_limit': -1,
'qos_mode': 'no_qos',
'route_replies_back_mode': False,
'router_advertisement': False,
'set_autonomous_address_flag': False,
'shared_interface': False,
'syn_mode': 'default',
'sync_parameter': {'full_sync_interval': 5000,
'heartbeat_group_ip': '224.0.0.221',
'incr_sync_interval': 50,
'statesync_group_ip': '224.0.0.222',
'sync_mode': 'sync_all',
'sync_security': 'sign'},
'virtual_engine_vlan_ok': False,
'virtual_resource_settings': [],
'vlanInterfaces': []}
{'adjust_antispoofing': True,
'arp_entry': [],
'comment': 'VPN Broker - EUA Domain',
'dhcp_server_on_interface': {'default_lease_time': 7200,
'dhcp_range_per_node': []},
'duplicate_address_detection': True,
'gateway_ref': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/internal_gateway/268437240',
'include_prefix_info_option_flag': False,
'interface_id': 'VPN_0',
'interfaces': [{'single_node_interface': {'address': 'X.X.X.X',
'apn': 'internet',
'auth_request': False,
'auth_request_source': False,
'automatic_default_route': False,
'backup_heartbeat': False,
'backup_mgt': False,
'domain_specific_dns_queries_source': False,
'dynamic': False,
'igmp_mode': 'none',
'key': 268444178,
'network_value': 'X.X.X.X/21',
'nicid': 'VPN_0',
'nodeid': 1,
'outgoing': False,
'phone_number': '*99#',
'pppoa': False,
'pppoe': False,
'primary_heartbeat': False,
'primary_mgt': False,
'relayed_by_dhcp': False,
'reverse_connection': False,
'vrrp': False,
'vrrp_id': -1,
'vrrp_priority': -1}}],
'key': 268444811,
'link': [{'href': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/vpn_broker_interface/268444811',
'rel': 'self',
'type': 'vpn_broker_interface'}],
'log_moderation': [],
'mac_address_postfix': 'fa:02:19',
'managed_address_flag': False,
'mtu': -1,
'name': 'VPN Broker Interface 0',
'other_configuration_flag': False,
'override_engine_settings': False,
'override_log_moderation_settings': False,
'qos_limit': -1,
'qos_mode': 'no_qos',
'retrieve_routes': 'true',
'router_advertisement': False,
'set_autonomous_address_flag': False,
'shared_interface': False,
'shared_secret': '*****',
'syn_mode': 'default',
'virtual_resource_settings': [],
'vpn_broker_domain_ref': 'http:/X.X.X.X8082/6.10/elements/vpn_broker_domain/268435460'}
{'aggregate_mode': 'none',
'arp_entry': [],
'cvi_mode': 'none',
'dhcp_server_on_interface': {'default_lease_time': 7200,
'dhcp_range_per_node': []},
'duplicate_address_detection': True,
'include_prefix_info_option_flag': False,
'interface_id': '0',
'interfaces': [{'single_node_interface': {'apn': 'internet',
'auth_request': False,
'auth_request_source': False,
'automatic_default_route': True,
'backup_heartbeat': False,
'backup_mgt': False,
'domain_specific_dns_queries_source': False,
'dynamic': True,
'dynamic_index': 1,
'igmp_mode': 'none',
'key': 268444177,
'nicid': '0',
'nodeid': 1,
'outgoing': False,
'phone_number': '*99#',
'pppoa': False,
'pppoe': False,
'primary_heartbeat': False,
'primary_mgt': True,
'relayed_by_dhcp': False,
'reverse_connection': True,
'vrrp': False,
'vrrp_id': -1,
'vrrp_priority': -1}}],
'key': 268444810,
'link': [{'href': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/physical_interface/268444810',
'rel': 'self',
'type': 'physical_interface'}],
'lldp_mode': 'disabled',
'log_moderation': [],
'managed_address_flag': False,
'mtu': -1,
'name': 'Interface 0',
'other_configuration_flag': False,
'override_engine_settings': False,
'override_log_moderation_settings': False,
'qos_limit': -1,
'qos_mode': 'no_qos',
'route_replies_back_mode': False,
'router_advertisement': False,
'set_autonomous_address_flag': False,
'shared_interface': False,
'syn_mode': 'default',
'sync_parameter': {'full_sync_interval': 5000,
'heartbeat_group_ip': '224.0.0.221',
'incr_sync_interval': 50,
'statesync_group_ip': '224.0.0.222',
'sync_mode': 'sync_all',
'sync_security': 'sign'},
'virtual_engine_vlan_ok': False,
'virtual_resource_settings': [],
'vlanInterfaces': []}
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-15-d277499e4914> in <module>
1 for endpoint in vpn_endpoints:
----> 2 pprint(endpoint.interface_id)
3
4
~/Documents/newlode/dev/cust-bv-sase-ipsec/.direnv/python-3.6/lib/python3.6/site-packages/smc/core/engine.py in interface_id(self)
2164 :return: str interface id
2165 """
-> 2166 return self.physical_interface.interface_id
2167
2168 @property
~/Documents/newlode/dev/cust-bv-sase-ipsec/.direnv/python-3.6/lib/python3.6/site-packages/smc/core/interfaces.py in interface_id(self)
706 :rtype: str
707 """
--> 708 return self.data.get("interface_id")
709
710 @interface_id.setter
~/Documents/newlode/dev/cust-bv-sase-ipsec/.direnv/python-3.6/lib/python3.6/site-packages/smc/base/decorators.py in __get__(self, obj, cls)
95 if obj is None:
96 return self
---> 97 value = obj.__dict__[self.func.__name__] = self.func(obj)
98 return value
99
~/Documents/newlode/dev/cust-bv-sase-ipsec/.direnv/python-3.6/lib/python3.6/site-packages/smc/base/model.py in data(self)
384 @cached_property
385 def data(self):
--> 386 return LoadElement(self.href)
387
388 @property
~/Documents/newlode/dev/cust-bv-sase-ipsec/.direnv/python-3.6/lib/python3.6/site-packages/smc/base/model.py in LoadElement(href, only_etag)
113 if only_etag:
114 return result.etag
--> 115 return ElementCache(result.json, etag=result.etag)
116
117
~/Documents/newlode/dev/cust-bv-sase-ipsec/.direnv/python-3.6/lib/python3.6/site-packages/smc/base/model.py in __init__(self, data, **kw)
170 def __init__(self, data=None, **kw):
171 self._etag = kw.pop("etag", None)
--> 172 super(ElementCache, self).__init__(data=data if data else {})
173
174 def etag(self, href):
~/Documents/newlode/dev/cust-bv-sase-ipsec/.direnv/python-3.6/lib/python3.6/site-packages/smc/base/structs.py in __init__(self, data, **kwargs)
156 def __init__(self, data=None, **kwargs):
157 self.data = data if data else {}
--> 158 self.update(self.data, **kwargs)
159
160 def __setitem__(self, key, value):
~/.pyenv/versions/3.6.15/lib/python3.6/_collections_abc.py in update(*args, **kwds)
844 self[key] = other[key]
845 else:
--> 846 for key, value in other:
847 self[key] = value
848 for key, value in kwds.items():
ValueError: too many values to unpack (expected 2)
{'address': '10.157.24.1',
'connection_type_ref': 'http://X.X.X.X:8082/6.10/elements/connection_type/1',
'deducted_name': '10.157.24.1',
'dynamic': False,
'enabled': False,
'force_nat_t': False,
'ike_phase1_id_type': 3,
'ipsec_vpn': True,
'key': 268443370,
'link': [{'href': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/internal_gateway/268437240/internal_endpoint/268443370',
'rel': 'self',
'type': 'internal_endpoint'},
{'href': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/internal_gateway/268437240/internal_endpoint/268443370/history',
'rel': 'history'},
{'href': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/internal_gateway/268437240/internal_endpoint/268443370/lock',
'rel': 'lock'}],
'locked': False,
'nat_t': True,
'physical_interface': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/physical_interface/268444809',
'read_only': False,
'ssl_vpn_portal': True,
'ssl_vpn_tunnel': True,
'system': False,
'system_key': -1,
'trashed': False,
'udp_encapsulation': False}
{'address': '172.16.2.30',
'connection_type_ref': 'http://X.X.X.X:8082/6.10/elements/connection_type/1',
'deducted_name': '172.16.2.30',
'dynamic': False,
'enabled': False,
'force_nat_t': False,
'ike_phase1_id_type': 3,
'ipsec_vpn': True,
'key': 268443371,
'link': [{'href': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/internal_gateway/268437240/internal_endpoint/268443371',
'rel': 'self',
'type': 'internal_endpoint'},
{'href': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/internal_gateway/268437240/internal_endpoint/268443371/history',
'rel': 'history'},
{'href': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/internal_gateway/268437240/internal_endpoint/268443371/lock',
'rel': 'lock'}],
'locked': False,
'nat_t': True,
'physical_interface': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/vpn_broker_interface/268444811',
'read_only': False,
'ssl_vpn_portal': True,
'ssl_vpn_tunnel': True,
'system': False,
'system_key': -1,
'trashed': False,
'udp_encapsulation': False}
{'connection_type_ref': 'http://X.X.X.X:8082/6.10/elements/connection_type/268435467',
'deducted_name': 'First DHCP Interface ip',
'dynamic': True,
'enabled': True,
'force_nat_t': False,
'ike_phase1_id_type': 1,
'ike_phase1_id_value': '[email protected]',
'ipsec_vpn': True,
'key': 268443372,
'link': [{'href': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/internal_gateway/268437240/internal_endpoint/268443372',
'rel': 'self',
'type': 'internal_endpoint'},
{'href': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/internal_gateway/268437240/internal_endpoint/268443372/history',
'rel': 'history'},
{'href': 'http://X.X.X.X:8082/6.10/elements/single_fw/268492219/internal_gateway/268437240/internal_endpoint/268443372/lock',
'rel': 'lock'}],
'locked': False,
'nat_t': True,
'read_only': False,
'ssl_vpn_portal': False,
'ssl_vpn_tunnel': False,
'system': False,
'system_key': -1,
'trashed': False,
'udp_encapsulation': False}
As you can see, we dont have the key "physical_interface" in the Endpoint 3 (dhcp mode)