我一直在为IOT设备进行一些模拟,我需要在C#中生成一个随机IP地址。创建随机IP地址的最简单方法是C#?
答案 0 :(得分:12)
如果您想使用IPAddress
对象:
var data = new byte[4];
new Random().NextBytes(data);
IPAddress ip = new IPAddress(data);
注意:如果您多次这样做,则应只创建一个Random
对象并重复使用。
如果要确保第一个元素不为零,则在将其传递给IPAddress构造函数之前,应将其与1进行OR运算:
data[0] |= 1;
...
如果您需要IPV6地址,请将第一行替换为:
var data = new byte[16];
并且您将获得IPV6地址。
答案 1 :(得分:2)
基于使用visual studio 2017和字符串插值
public string GetRandomIpAddress()
{
var random = new Random();
return $"{random.Next(1, 255)}.{random.Next(0, 255)}.{random.Next(0, 255)}.{random.Next(0, 255)}";
}