Python 中的随机 IP 地址生成器

IP(互联网协议)地址是识别网络上设备的唯一编号。 IPv4 和 IPv6 是 IP 地址的两个版本。

IPv4 地址由点 . 分隔为四个部分,IPv6 地址由分号 : 分隔为八个部分。

Python 提供了多个可用于打印随机 IP 地址的模块。 本教程将教您在 Python 中以字符串形式生成随机 IP 地址。


使用 Faker 模块在 Python 中生成随机 IP 地址作为字符串

Faker 是一个 Python 模块,可让您生成虚假数据。 它可以打印不同类型的假数据,包括IP地址、姓名、电子邮件、国家、文本等。

你可以使用 pip 命令安装 Faker。

pip install Faker

以下示例在 Python 中生成随机 IPv4 地址。

from faker import Faker
fake = Faker()
ip_addr = fake.ipv4()
print(ip_addr)

输出:

126.144.73.38

要打印随机 IPv6 地址,您可以运行以下脚本。

from faker import Faker
fake = Faker()
ip_addr = fake.ipv6()
print(ip_addr)

输出:

f0d7:7e1e:7a39:32f1:c4aa:1e80:2287:1311

使用 random 模块在 Python 中将随机 IP 地址生成为字符串

random 是 Python 中的一个内置模块,用于打印随机数。

以下示例在 Python 中生成随机 IPv4 地址。

import random

ip = ".".join(str(random.randint(0, 255)) for _ in range(4))
print(ip)

输出:

60.254.193.222

使用 ipaddress 模块在 Python 中将随机 IP 地址生成为字符串

Python 中的 ipaddress 模块提供了生成、操作和处理 IPv4 和 IPv6 地址和网络的功能。

以下示例使用 Python 打印随机 IPv4 地址。

import ipaddress
import random

IPV4 = ipaddress.IPv4Address._ALL_ONES
def random_ipv4():
    return  ipaddress.IPv4Address._string_from_ip_int(
        random.randint(0, IPV4)
    )
print(random_ipv4())

输出:

114.71.143.104

要生成 IPv6 地址,请执行此脚本。

import ipaddress
import random

IPV6 = ipaddress.IPv6Address._ALL_ONES
def random_ipv6():
    return ipaddress.IPv6Address._string_from_ip_int(
        random.randint(0, IPV6)
    )
print(random_ipv6())

输出:

44c3:48f4:669a:e964:6c93:75ca:3625:59d3

使用 socket 模块在 Python 中生成随机 IP 地址作为字符串

这是另一种在 Python 中使用随机、套接字和结构模块生成 IPv4 地址的方法。

import random
import socket
import struct
ip=socket.inet_ntoa(struct.pack('>I', random.randrange(1, 0xffffffff)))
print(ip)

输出:

101.131.185.15

您已经学会了使用不同的 Python 模块来打印 IPv4 和 IPv6 地址。 现在您应该知道如何在 Python 中生成随机 IP 地址作为字符串。

你可能感兴趣的:(Python,实用技巧,python,tcp/ip,服务器)