__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
�

x[hF`��P�SSKrSSKrSSKrSSKJrJr SSKJr SSKJrJ	r	J
r
 SSKJrJ
r
Jr SSKJr SSKJr \R&"\5r//SS	S
.r"SS\
5rS
r\R2"SSS9S5rSrSrSS\\\\\444SjjrSrSr Sr!Sr"Sr#SSjr$g)�N)�copy�deepcopy)�IPv4Network)�Dict�List�	TypedDict)�	lifecycle�subp�util)�net_prefix_to_ipv4_mask)�SimpleTable�F��ipv4�ipv6�hwaddr�upc�J�\rSrSr%\\S'\\S'\\\S'\\\S'Sr	g)�	Interface�,rrrr�N)
�__name__�
__module__�__qualname__�__firstlineno__�bool�__annotations__�strr�dict�__static_attributes__r��3/usr/lib/python3/dist-packages/cloudinit/netinfo.pyrr,s ���H��K�
�t�*��
�t�*�r!rc	�0�[R"U5n0nUGHvnSU;aUSO/nURS5S:XaUSOSnU[SU;=(a SU;5//S.nURS	/5GHnURS
5S:XaySU;a$[	[S
US35R5OSnURSS5UURSS5URSS5S.n	USRU	5 M�US
S:XdM�URSS5n
U
(a-URS5(dU
SURSS53n
U
URSS5S.n	USRU	5 GM XbUS'GMy U$)aGet network device dicts from ip route and ip link info.

ipaddr_json: Output string from 'ip --json addr' command.

Returns a dict of device info keyed by network device name containing
device configuration values.

Raises json.JSONDecodeError if json could not be decoded
�flags�	link_type�ether�addressr�UP�LOWER_UP)rrrr�	addr_info�family�inet�	prefixlenz0.0.0.0/�local�	broadcast�scope)�ip�mask�bcastr0r�inet6�/�@)r1�scope6r�ifname)�json�loads�getrrr�netmask�append)�ipaddr_json�ipaddr_data�devs�devr$r'�dev_info�addrr2�parsed_addrr1s           r"�_netdev_info_iproute_jsonrE3s����*�*�[�)�K�
�D��� '�3���G��B��$'�G�G�K�$8�G�$C�#�i�.�����t�u�}�<��u�)<�=���	
���G�G�K��,�D��x�x��!�V�+�#�d�*���h�t�K�/@�.A�$B�C�K�K�L����(�(�7�B�/� �!�X�X�k�2�6�!�X�X�g�r�2�	���� �'�'��4��h��7�*��X�X�g�r�*���d�h�h�y�1�1��4�q����+�r�!:� ;�<�B��"�h�h�w��3����� �'�'��4�7-�8'�S��]��K�L�Kr!z22.1zqRequired by old iproute2 versions that don't support ip json output. Consider upgrading to a more recent version.)�deprecated_version�
extra_messagec��0nSn[UR55GH#up4[R"SU5nU(atUR	S5R5R
S5SnUR	S5R
S5n//S[S	U;=(a S
U;5S.X'M�SU;a\[R"S
U5nU(d[RSX45 M�XSRUR55 M�SU;a�[R"SU5nU(d[RSX45 GM7UR5nURS5nURS5up�nU(dSnXSRU	US(aUSOS[U5USS.5 GM�SU;ao[R"SU5nU(d[RSX45 GM�UR	S5S:XaUR	S5XS'GMSXS'GM#GM& U$)z�
@param ipaddr_out: Output string from 'ip addr show' command.

@returns: A dict of device info keyed by network device name containing
          device configuration values.
@raise: TypeError if ipaddr_out isn't a string.
Nz.^\d+:\s(?P<dev>[^:]+):\s+<(?P<flags>\S+)>\s+.*rA�@rr$�,rr(r)rr4z?\s+inet6\s(?P<ip>\S+)(\s(peer\s\S+))?\sscope\s(?P<scope6>\S+).*z*Could not parse ip addr show: (line:%d) %srr,zd\s+inet\s(?P<cidr4>\S+)(\smetric\s(?P<metric>\d+))?(\sbrd\s(?P<bcast>\S+))?\sscope\s(?P<scope>\S+).*�cidr4r5�32rr3r0)r1r3r2r0�linkz-\s+link/(?P<link_type>\S+)\s(?P<hwaddr>\S+).*r%r&r)�	enumerate�
splitlines�re�match�group�lower�splitr�LOG�warningr=�	groupdict�pop�	partitionr)�
ipaddr_outr@�dev_name�num�line�mr$rQrKrC�_�prefixs            r"�_netdev_info_iprouterais���D��H��z�4�4�6�7�	���H�H�F��M����w�w�u�~�+�+�-�3�3�C�8��;�H��G�G�G�$�*�*�3�/�E�����4�5�=�@�Z�5�-@�A�	�D�N���_����.��	�A�����@�#����N�6�"�)�)�!�+�+�-�8�
�t�^����-���A�����@�#����K�K�M�E��I�I�g�&�E�#�o�o�c�2�O�D�V�����N�6�"�)�)��/4�W�~�U�7�^�2�3�F�;�"�7�^�	�
��t�^����@�$��A�����@�#����w�w�{�#�w�.�+,�7�7�8�+<���x�(�+-���x�(��A8�B�Kr!c��0nUR5GHqnU(dM
USS;aDUR5SnURS5(aUSSnX1;a[[5X'UR5R
5R5n[U5S:�a'[R"SUS5(aSUWS'[[U55GH�nXES	:Xa=XES-RS
5upgUWSRU[U5S.5 MIXES
:XaXES-UWSSS'MfXES:XaXES-UWS'M}XES:XaKXES-S:Xa UWSRSXES-05 M�UWSRSXES-05 M�XES:Xa)UWSSSS
-XES--nX�USSS'GMXERS5(a"XERS5UWSSS'GM;XES:XdGMF[R"SXES-5n	U	(a U	R!S5UWSSS'GM�XES-UWSSS'GM� GMt U$)Nr��	� �:����zflags=[x\d]+<up.*>Trr,r5r)r1r2r/r3zaddress:rr4�addr:rr1�r-�scope:r7�scopeid�	.*<(\S+)>)rOrT�endswithr�DEFAULT_NETDEV_INFOrS�strip�lenrP�search�ranger=r�
startswith�lstriprQrR)
�
ifconfig_datar@r]�curdev�toks�i�network�net_bits�addr6�ress
          r"�_netdev_info_ifconfig_netbsdr~�s���
�D��(�(�*������7�+�%��Z�Z�\�!�_�F����s�#�#�������!�'�(;�<����z�z�|�!�!�#�)�)�+���t�9�q�=��y�y�.��Q��8�8�%)��V��T�"��s�4�y�!�A��w�&� �$(�Q��K�$5�$5�c�$:�!���V��V�$�+�+�"�,C�H�,M�N����K�'�48�Q��K��V��V�$�R�(��1���J�&�)-�!�e���V��X�&���G�#��A��;�'�)���L��(�/�/��t��E�{�0C�D���L��(�/�/��t��E�{�0C�D���K�'��V��V�,�R�0��6��<�t��E�{�J��16�V��V�$�R�(��.���#�#�H�-�-�59�W�^�^�H�5M��V��V�$�R�(��2���I�%��h�h�|�T�a�%�[�9���9<���1��D��L��(��,�X�6�9=�!�e��D��L��(��,�X�6�3"�+�T�Kr!c�R�0nUR5GHnU(dM
USS;aDUR5SnURS5(aUSSnX1;a[[5X'UR5R
5R5nUSS:Xa	SUWS'O6[U5S:�a'[R"SUS5(aSUWS'[[U55GH(nXES	:Xa/UWS
RSXES-RS505 M;XERS
5(a!XERS
5UWS
SS'MtXES:XaXES-UWS
SS'M�XERS5(a!XERS5UWS
SS'M�XES:XaXES-UWS
SS'M�XES:XdXES:XaXES-UWS'GMXES:XaMXES-S:Xa!UWSRSXES-05 GM;UWSRSXES-05 GM\XES:Xa)UWSSSS-XES--nXaUSSS'GM�XERS5(a"XERS5UWSSS'GM�XES:XdGM�[R"SXES-5nU(a URS5UWSSS'GMXES-UWSSS'GM+ GM U$)NrrcrfrgrTrhz
flags=\d+<up,r,rr1rizbcast:r3r/zmask:r2r<rr&r4rrjr-r5rkr7rlrm)rOrTrnrrorSrprqrPrrrsr=rurtrQrR)rvr@r]rwrxryr|r}s        r"�_netdev_info_ifconfigr��sD��
�D��(�(�*������7�+�%��Z�Z�\�!�_�F����s�#�#�������!�'�(;�<����z�z�|�!�!�#�)�)�+����7�d�?�!%�D��L�����Y��]��y�y�)�4��7�3�3�%)��V��T�"��s�4�y�!�A��w�&� ��V��V�$�+�+��4�A��;�-�-�g�6�7����#�#�H�-�-�48�G�N�N�8�4L��V��V�$�R�(��1���K�'�48�Q��K��V��V�$�R�(��1���#�#�G�,�,�37�7�>�>�'�3J��V��V�$�R�(��0���I�%�37�A��;��V��V�$�R�(��0���H�$���7�(:�)-�!�e���V��X�&���G�#��A��;�'�)���L��(�/�/��t��E�{�0C�D���L��(�/�/��t��E�{�0C�D���K�'��V��V�,�R�0��6��<�t��E�{�J��16�V��V�$�R�(��.���#�#�H�-�-�59�W�^�^�H�5M��V��V�$�R�(��2���I�%��h�h�|�T�a�%�[�9���9<���1��D��L��(��,�X�6�9=�!�e��D��L��(��,�X�6�="�'+�f�Kr!�returnc�^^�0n[R"5(a'[R"SS/SS/S9up#[U5nO�[R"S5(a'[R"/SQ5upC[U5nOW[R"S5(a'[R"SS/SS/S9up#[U5nO[RS	5 US
:XaU$[[[4mS
UU4SjjmT"XS9 U$![Ra( [R"/SQ5upC[U5nNef=f)a�return the instance's interfaces and interface data

includes, interface name, link state, hardware address, and lists of ipv4
and ipv6 addresses

example output:
{
'lo': {
    'up': True,
    'hwaddr': '',
    'ipv4': [
    {
        'bcast': '',
        'ip': '127.0.0.1',
        'mask': '255.0.0.0',
        'scope': 'host',
    }],
    'ipv6': [{'ip': '::1/128', 'scope6': 'host'}],
},
'lxdbr0': {
    'up': True
    'hwaddr': '00:16:3e:fa:84:30',
    'ipv4': [{
        'bcast': '',
        'ip': '10.161.80.1',
        'mask': '255.255.255.0',
        'scope': 'global',
    }],
    'ipv6': [
        {'ip': 'fd42:80e2:4695:1e96::1/64', 'scope6': 'global'},
        {'ip': 'fe80::216:3eff:fefa:8430/64', 'scope6': 'link'},
    ]
},
}

�ifconfigz-arrh��rcsr1)r1z--jsonrC)r1rC�showz>Could not print networks: missing 'ip' and 'ifconfig' commandsrc�>�[U[5(aUR5nO2[U[[45(a[U5nO[
S5eUH+upEXR;aXU'M[UT5(dM#T"XQ5 M- g)zIRecursively replace 'empty_vals' in data (dict, tuple, list)
with new_valzUnexpected input to fillN)�
isinstancer�items�tuple�listrN�	TypeError)�data�new_val�
empty_vals�myiter�key�val�fill�
recurse_typess      ��r"r��netdev_info.<locals>.fillgsq����d�D�!�!��Z�Z�\�F�
��u�d�m�
,�
,��t�_�F��6�7�7��H�C�� �#�S�	��C��/�/��S�"�	r!)r�)r)rr!)r�	is_NetBSDr
r~�whichrE�ProcessExecutionErrorrar�rUrVrr�r�)�emptyr@�	ifcfg_out�_errrZr�r�s     @@r"�netdev_infor�%s���N�D��~�~��� �I�I�z�4�&8�q�!�f�E���+�I�6��	
���D�	�	�	4�!%���+C�!D��Z�,�Z�8�D�

���J�	�	� �I�I�z�4�&8�q�!�f�E���$�Y�/�����L�	
�
��{����5�$�'�M�#�#� 	����K��G�)�)�	4�!%���+A�!B��Z�'�
�3�D�	4�s�"%D	�	9E�Ec���0n/US'/US'UR5nSSSSSSS.nUGH)n[U5nU(dMUR5nS/nUSS:XaSUS	'SUS
'O]SUS;aUSRS5up�O&USnSn	URS
5 [	U	5US
'X�S	'[	U	5US
'SUS'[[
U55HMn
XjS:XaXjS-US'URSS5 XjS:Xa
XjS-US'XjS:XdMCXjS-US'MO SRU5US'USRU5 GM, [R"/SQSS/S9up�UR5n
U
H�n0nU(dMUR5nUSS:XaSUS	'SUS'OUSUS	'SUS'SUS'[[
U55HSn
XjS:XaXjS-US'SUS'XjS:Xa
XjS-US'XjS:Xa
XjS-US'XjS:XdMHUSS-US'MU USRU5 M� U$![Ra U$f=f)a8
Get network route dicts from ip route info.

@param iproute_data: Output string from ip route command.

@returns: A dict containing ipv4 and ipv6 route entries as lists. Each
          item in the list is a route dictionary representing destination,
          gateway, flags, genmask and interface information.
rrr)�destinationr$�gateway�genmask�iface�metric�Ur�default�0.0.0.0r�r�r5rL�Hr��viarh�GrAr�r�r$)r1z	--onelinez-6�router��table�allr�z::/0�UG�::�expires�e)rOrrTr=rrsrq�insert�joinr
r�)�iproute_data�routes�entries�default_route_entryr]�entryrxr$rC�cidrry�
iproute_data6�_err6�entries6s              r"�_netdev_route_info_iprouter�{s����F��F�6�N��F�6�N��%�%�'�G�������
�����(�)�����z�z�|�������7�i��#,�E�-� �(�E�)���d�1�g�~�#�A�w�}�}�S�1���t��A�w�������S�!�#:�4�#@��i� �#'�-� �6�t�<�E�)��(�E�)���s�4�y�!�A��w�%��#'�A��;��i� ����Q��$��w�%��!%�!�e���g���w�(�"�"&�1�u�+��h��"�������g���v����e�$�;�<)�!%���F��A��"
���!�+�+�-���D��E����:�:�<�D��A�w�)�#�'-��m�$�!%��g��'+�A�w��m�$�#'��i� �!$��g���3�t�9�%���7�e�#�'+��E�{�E�)�$�%)�E�'�N��7�e�#�%)�a�%�[�E�'�N��7�h�&�&*�q�5�k�E�(�O��7�i�'�%*�7�^�c�%9�E�'�N�&�
�6�N�!�!�%�(�-�.�M��7�%�%�
��4�M�7
�s�I
�
I%�$I%c
� �0n/US'/US'UR5nUH�nU(dMUR5n[U5S:d-USS:Xd$USS:XdUSS:XdUSS:Xd	USS	:XaMZ[U5S
:a/URS5 URS5 USUS
'SUS'USUSUSUSUSUSUSUS
S.nUSRU5 M� [R"/SQSS/S9upgUR5nUH�nU(dMUR5n[U5S
:d-USS:Xd$USS:XdUSS:XdUSS:Xd	USS:XaMZUSUSUSUSUSUSUSS.nUSS:XaM�USRS5(a[R"SSUS5US'USRU5 M� U$![Ra U$f=f)Nrr�r�Kernel�Destination�Internet�	Internet6�Routing��-��rhrj��)r�r�r�r$r��ref�user�)�netstatz-Ar4�--route�	--numericr��Proto�Active)r�r�r$r�r�r�r�r��lor�z/128z\/128$r)	rOrTrqr=r
rnrP�subr�)	�
route_datar�r�r]rxr��route_data6r�r�s	         r"�_netdev_route_info_netstatr��sm��
�F��F�6�N��F�6�N��#�#�%�G������z�z�|��
��I��M��A�w�(�"��A�w�-�'��A�w�*�$��A�w�+�%��A�w�)�#���t�9�q�=��K�K����K�K����1�g�D��G��D��G���7��A�w��A�w��!�W��1�g���7���7��!�W�	
��	�v����e�$�G�J&)�#�y�y�>�Q��F� 
����)�)�+���D����:�:�<�D��D�	�A�
���7�h�&���7�m�+���7�j�(���7�g�%���7�h�&��#�A�w���7��a���q�'��A�w��A�w��a���E��W�~��%���]�#�,�,�V�4�4�')�v�v��r�5��#7�(��m�$�
�6�N�!�!�%�(�=�>�M��G�%�%�
��D�M�G
�s�3G5�5H
�H
c�>�0n[R"S5(a'[R"/SQ5up[U5nU$[R"S5(a([R"/SQSS/S9up2[U5nU$[RS5 U$)	Nr1)r1z-or�r�r�)r�r�r�z--extendrrhr�z;Could not print routes: missing 'ip' and 'netstat' commands)r
r�r�r�rUrV)r��iproute_outr��	route_outs    r"�
route_infor�(s���
�F��z�z�$���"�i�i�(E�F���+�K�8���M�
���I�	�	� �I�I�;�!�Q��
���,�I�6��
�M�	���I�	
��Mr!c��/nSn[US9nU(dg/SQn[U5n[UR55H�upVUR	S5nUH6nURUUSUSUSUR	S	U5US
45 M8 UR	S5n	U	H3nURUUSUSUUR	SU5US
45 M5 U(aM�U	(aM�URXVSXXS
45 M� UR
5n
[[U
R5[S
95n[R"SSU5nURX�/5 SR#U5S-$![aGn
UR[R"SR[!U
5S9SS55 Sn
A
N`Sn
A
ff=f)N�.)r��
)�Device�Up�Address�Mask�Scopez
Hw-Addressrrr1r2r0rrr7�r�zNet device info�+z Net device info failed ({error})��error�!�P)r�r
�sortedr�r;�add_row�
get_stringrq�maxrOr�center�extend�	Exceptionr=�formatrr�)�linesr��netdev�fields�tblrAr��
ipv4_addrsrC�
ipv6_addrs�netdev_s�max_len�headerr�s              r"�netdev_pformatr�;s����E��E�0)��5�)����K���&�!�������/�I�C����&�)�J�"�������T�
��T�
��V������%�0��X��
�	�#����&�)�J�"�������T�
��T�
������5�1��X��
�	�#��J�������t�*�e�E��>�J��70�<�>�>�#���c�(�-�-�/�S�9�:�����.��W�=��
���f�'�(��9�9�U��d�"�"��_�
�
����K�K�2�9�9��A��9�G���
�	
�	
��
�s�	E>�>
G�=G
�
Gc
��/n[5nURS5(a�/SQn[U5n[URS55HDupE[	U5nURUUSURSS5USUSUS/5 MF UR5n[[UR5[S
95n	[R"SSU	5n
URX�/5 URS
5(a�/SQn[U5n[URS
55HKupE[	U5nUSS:XaMURUUSURSS5USUS/5 MM UR5n[[UR5[S
95n	[R"SSU	5n
URX�/5 SR'U5S-$![a*n[R"[S	U-5 SnAGM�SnAff=f![a*n[R"[S	U-5 SnAGM(SnAff=f![ aenUR#[R"SR%[	U5S9SS55 [R"[SU-5 SnAN�SnAff=f)Nr)�Router��Gateway�Genmaskr�Flagsr�r�r�r�r�r$zRoute info formatting error: %sr�zRoute IPv4 infor�r)r�r�r�rr�r�r�zRoute IPv6 infozRoute info failed ({error})r�r�r�zRoute info failed: %sr�)r�r;r
rNrr��KeyErrorr�logexcrUr�rqr�rOr�r�r�r=r�r�)
r�r��	fields_v4�tbl_v4�n�r�route_idr��route_sr�r��	fields_v6�tbl_v6s
             r"�
route_pformatrrs����E�C,�����:�:�f����I�!��+�F�!�&�*�*�V�"4�5����q�6��L��N�N�$��m�,��E�E�)�Y�7��i�L��g�J��g�J�
�	�6��'�'�)�G��#�g�0�0�2��<�=�G��[�[�!2�C��A�F��L�L�&�*�+��:�:�f����I�!��+�F�!�&�*�*�V�"4�5����q�6���W�:��%��L��N�N�$��m�,��E�E�)�T�2��g�J��g�J���6� �'�'�)�G��#�g�0�0�2��<�=�G��[�[�!2�C��A�F��L�L�&�*�+��9�9�U��d�"�"��G �L��K�K��%F��%J�K�K��L��: �L��K�K��%F��%J�K�K��L��y�6�
����K�K�-�4�4�3�q�6�4�B�C��
�	
�
	
���C�0�1�4�5�5��
6�sH�
I#�3G5�/H,�5
H)�?H$�$H)�,
I �6I�I �#
K�-AK
�
Kc�l�/n[5R5nU(a!UHnURU<U<35 M OURU5 [	5R5nU(a!UHnURU<U<35 M OURU5 SRU5$)Nr�)r�rOr=r�rr�)r`r��netdev_linesr]�route_liness     r"�
debug_infor�s����E�!�#�.�.�0�L�
� �D��L�L�6�4�0�1�!�	���\�"��/�,�,�.�K�
��D��L�L�6�4�0�1� �	���[�!��9�9�U��r!)r)z	ci-info: )%r9�loggingrPrr�	ipaddressr�typingrrr�	cloudinitr	r
r�cloudinit.net.network_stater�cloudinit.simpletabler
�	getLoggerrrUrorrE�deprecate_callrar~r�rr�r�r�r�r�rrrr!r"�<module>rs�����	��!�(�(�+�+�?�-�
����!��& "�2��5�I���	��3�l����K��
K��
K�\-�`6�t
�S�	�#�t�C��N�#�
#�$�S�lU�pR�j�&4#�nF#�Rr!

Filemanager

Name Type Size Permission Actions
__init__.cpython-313.pyc File 149 B 0644
apport.cpython-313.pyc File 9.96 KB 0644
atomic_helper.cpython-313.pyc File 4.39 KB 0644
cloud.cpython-313.pyc File 4.96 KB 0644
dmi.cpython-313.pyc File 9.85 KB 0644
event.cpython-313.pyc File 2.56 KB 0644
features.cpython-313.pyc File 1.85 KB 0644
gpg.cpython-313.pyc File 9.41 KB 0644
helpers.cpython-313.pyc File 21.72 KB 0644
importer.cpython-313.pyc File 2.82 KB 0644
lifecycle.cpython-313.pyc File 10.41 KB 0644
netinfo.cpython-313.pyc File 24.76 KB 0644
performance.cpython-313.pyc File 4.42 KB 0644
persistence.cpython-313.pyc File 3.04 KB 0644
registry.cpython-313.pyc File 1.86 KB 0644
safeyaml.cpython-313.pyc File 12.13 KB 0644
settings.cpython-313.pyc File 1.25 KB 0644
signal_handler.cpython-313.pyc File 5.39 KB 0644
simpletable.cpython-313.pyc File 3.36 KB 0644
socket.cpython-313.pyc File 7.08 KB 0644
ssh_util.cpython-313.pyc File 25.03 KB 0644
stages.cpython-313.pyc File 47.25 KB 0644
subp.cpython-313.pyc File 15.1 KB 0644
temp_utils.cpython-313.pyc File 3.96 KB 0644
templater.cpython-313.pyc File 9.34 KB 0644
type_utils.cpython-313.pyc File 755 B 0644
url_helper.cpython-313.pyc File 43.18 KB 0644
user_data.cpython-313.pyc File 13.78 KB 0644
util.cpython-313.pyc File 111.33 KB 0644
version.cpython-313.pyc File 576 B 0644
warnings.cpython-313.pyc File 4.48 KB 0644
Filemanager