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 地址作为字符串。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

迹忆客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值