diff --git a/pkgs/sdk-pkg/src/genie/libs/sdk/libs/abstracted_libs/iosxe/management_interface.py b/pkgs/sdk-pkg/src/genie/libs/sdk/libs/abstracted_libs/iosxe/management_interface.py index 857e027e6..d210db459 100644 --- a/pkgs/sdk-pkg/src/genie/libs/sdk/libs/abstracted_libs/iosxe/management_interface.py +++ b/pkgs/sdk-pkg/src/genie/libs/sdk/libs/abstracted_libs/iosxe/management_interface.py @@ -1,8 +1,15 @@ '''IOSXE implementation of ManagementInterface class''' +from ipaddress import ip_address, IPv6Address + # parser from genie.libs.parser.iosxe.show_interface import ShowIpInterfaceBriefPipeIp +try: + from genie.libs.parser.iosxe.show_interface import ShowIpv6InterfaceBriefPipeIp +except ModuleNotFoundError: + pass + # ManagementInterface from ..management_interface import ManagementInterface as ManagementInterface_main @@ -49,7 +56,12 @@ def get_interface_name(self, device, ipaddress): # Create parser object parser_obj = ShowIpInterfaceBriefPipeIp(device=device) + try: + if isinstance(ip_address(ipaddress), IPv6Address): + parser_obj = ShowIpv6InterfaceBriefPipeIp(device=device) + except NameError: + pass intf_name = super().get_interface_name(device, ipaddress, parser_obj) - return intf_name \ No newline at end of file + return intf_name