5
def
convert_IPv4_address():
#
定义convert_IPv4_address()函数
6
for
ip_addr
in
[
'
127.0.0.1
'
,
'
192.168.0.1
'
]:
7
packed_ip_addr = socket.inet_aton(ip_addr)
#
将对应的IP地址转换为32—bit的封装包
8
unpacked_ip_addr = socket.inet_ntoa(packed_ip_addr)
#
将对应的32-bit的封装包转换为IP地址的标准点号分隔字符串
9
print
(
"
IP Address: %s => packed: %s, Unpacked: %s
"
%
(ip_addr, hexlify(packed_ip_addr), unpacked_ip_addr))
12
if
__name__
==
'
__main__
'
:
13
convert_IPv4_address()
2. .inet_aton()和inet_ntoa()及hexlify()解释
1 def inet_aton(string): # real signature unknown; restored from __doc__
2 """
3 inet_aton(string) -> bytes giving packed 32-bit IP representation
5 Convert an IP address in string format (123.45.67.89) to the 32-bit packed
6 binary format used in low-level network functions.
7 """
8 return b""
9 """将ip地址的4段地址分别进行2进制转化,输出用16进制表示
10 >>> import socket
11 >>> from binascii import hexlify
12 >>> a = socket.inet_aton('192.168.1.1')
13 >>> c= hexlify(a)
14 >>> c
15 b'c0a80101'
16 """
20 def inet_ntoa(packed_ip): # real signature unknown; restored from __doc__
21 """
22 inet_ntoa(packed_ip) -> ip_address_string
24 Convert an IP address from 32-bit packed binary format to string format
25 """
26 pass
27 """转换32位打包的IPV4地址转换为IP地址的标准点号分隔字符串表示。"""
29 def hexlify(data): # known case of binascii.hexlify
30 """
31 Hexadecimal representation of binary data.
33 The return value is a bytes object.
34 """
35 return b""
36 """用十六进制形式表示二进制"""