社区
C语言
帖子详情
ip匹配问题
add_oil
2012-04-16 09:33:19
如果有一个ip库 里面是由 beginip endip 组成的ip段 已知有一个ip 192.168.198.10 怎样匹配从这个ip属于哪个段?
...全文
251
20
打赏
收藏
ip匹配问题
如果有一个ip库 里面是由 beginip endip 组成的ip段 已知有一个ip 192.168.198.10 怎样匹配从这个ip属于哪个段?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
nice_cxf
2012-04-17
打赏
举报
回复
哦,还要网络字节序为本机字节序,
l1= ntohl(inet_addr("10.0.0.1"));
以下都要这样就可以了
add_oil
2012-04-17
打赏
举报
回复
[Quote=引用 18 楼 的回复:]
192.168.0.0不是一个有效的地址,最后一个应该是1,同样类似192.168.0.255也是不行的,如果你的数据库里这种数据太多要做对应的修改
[/Quote]
l1= inet_addr("10.0.0.1");
l2 = inet_addr("10.0.1.1");
l3 = inet_addr("10.0.0.224");
的话是一样的啊 输出的结果l3 怎样判断是不是在l1 到l2的范围?
nice_cxf
2012-04-17
打赏
举报
回复
192.168.0.0不是一个有效的地址,最后一个应该是1,同样类似192.168.0.255也是不行的,如果你的数据库里这种数据太多要做对应的修改
add_oil
2012-04-17
打赏
举报
回复
[Quote=引用 2 楼 的回复:]
用inet_addr都转成unsigned int,然后比较就是了,
[/Quote]
int main(int argc, char* argv[])
{
struct in_addr addr1,addr2;
unsigned long l1,l2,l3;
l1= inet_addr("192.168.0.0");
l2 = inet_addr("192.168.1.0");
l3 = inet_addr("192.168.0.222");
printf("%lu\n",l1);
printf("%lu\n",l2);
printf("%lu\n",l3);
}
不能说出问题咯 输出的 l3都不是在那个范围内??
nice_cxf
2012-04-16
打赏
举报
回复
如果你愿意,字符串比较也可以,不过要把.1等等的换成.001也就是说都必须3位,你自己选择把
evencoming
2012-04-16
打赏
举报
回复
自己写一个比较函数。。。
int ip1,ip2,ip3,ip4;
fscanf(fp,"%d.%d.%d.%d",ip1,ip2,ip3,ip4);
...
然后,如果是顺序存放的,只需要毕竟边界值。
否则, 全部取出来,放内存里面,排序之后比较。
luciferisnotsatan
2012-04-16
打赏
举报
回复
unsigned long inet_addr( const char* cp);
不转int,比字符串,更麻烦。
add_oil
2012-04-16
打赏
举报
回复
因为要把一个库是以txt文档保存的 要把所有的转为int的 很麻烦吧
add_oil
2012-04-16
打赏
举报
回复
还有没有其他方法呢
luciferisnotsatan
2012-04-16
打赏
举报
回复
[Quote=引用 5 楼 的回复:]
引用 4 楼 的回复:
引用 2 楼 的回复:
用inet_addr都转成unsigned int,然后比较就是了,
++
举例说下 能否
[/Quote]
查下msdn不就知道了?
add_oil
2012-04-16
打赏
举报
回复
[Quote=引用 4 楼 的回复:]
引用 2 楼 的回复:
用inet_addr都转成unsigned int,然后比较就是了,
++
[/Quote]
举例说下 能否
缺媳妇的郝
2012-04-16
打赏
举报
回复
[Quote=引用 2 楼 的回复:]
用inet_addr都转成unsigned int,然后比较就是了,
[/Quote]
++
add_oil
2012-04-16
打赏
举报
回复
[Quote=引用 1 楼 的回复:]
是 ip段是有序的吗?
如果是,直接换成 unsigned int,看是不是哪个范围内。
[/Quote]
能否举例说明下
nice_cxf
2012-04-16
打赏
举报
回复
用inet_addr都转成unsigned int,然后比较就是了,
evencoming
2012-04-16
打赏
举报
回复
是 ip段是有序的吗?
如果是,直接换成 unsigned int,看是不是哪个范围内。
add_oil
2012-04-16
打赏
举报
回复
[Quote=引用 15 楼 的回复:]
引用 14 楼 的回复:
引用 13 楼 的回复:
引用 12 楼 的回复:
如果全部用int 比较的话 太麻烦了 准备用 ip+mask 方法 mask 是数量? 这样ok不
这样你不还是要转int?奇怪了转换只是用个系统函数而已,就这你就嫌麻烦?
对了 我转为int 是用A*256*256*256+B*256*256+C*256+D 这个哦 你说的系统函数是哪个?
……
[/Quote]
ok
nice_cxf
2012-04-16
打赏
举报
回复
[Quote=引用 14 楼 的回复:]
引用 13 楼 的回复:
引用 12 楼 的回复:
如果全部用int 比较的话 太麻烦了 准备用 ip+mask 方法 mask 是数量? 这样ok不
这样你不还是要转int?奇怪了转换只是用个系统函数而已,就这你就嫌麻烦?
对了 我转为int 是用A*256*256*256+B*256*256+C*256+D 这个哦 你说的系统函数是哪个?
[/Quote]
不仔细看回帖的么?2楼就给你了
add_oil
2012-04-16
打赏
举报
回复
[Quote=引用 13 楼 的回复:]
引用 12 楼 的回复:
如果全部用int 比较的话 太麻烦了 准备用 ip+mask 方法 mask 是数量? 这样ok不
这样你不还是要转int?奇怪了转换只是用个系统函数而已,就这你就嫌麻烦?
[/Quote]
对了 我转为int 是用A*256*256*256+B*256*256+C*256+D 这个哦 你说的系统函数是哪个?
nice_cxf
2012-04-16
打赏
举报
回复
[Quote=引用 12 楼 的回复:]
如果全部用int 比较的话 太麻烦了 准备用 ip+mask 方法 mask 是数量? 这样ok不
[/Quote]
这样你不还是要转int?奇怪了转换只是用个系统函数而已,就这你就嫌麻烦?
add_oil
2012-04-16
打赏
举报
回复
如果全部用int 比较的话 太麻烦了 准备用 ip+mask 方法 mask 是数量? 这样ok不
【K8S系列】Kubernetes 中 Service
IP
地址和端口不
匹配
问题
及解决方案【已解决】
本文聚焦Kubernetes中Service
IP
地址和端口不
匹配
问题
。先描述该
问题
表现,接着介绍故障排查步骤,包括检查Service状态、查看详细信息、检查Pod端口配置等。还分析了常见原因及对应解决方案,最后总结强调确保配置一致和网络可用对服务正常运行的重要性。
正则精准
匹配
IP
的
问题
本文详细介绍了一种使用正则表达式精确
匹配
IP
v4地址的方法。通过分解
IP
地址的组成,文章给出了一个复杂的正则表达式,能够准确判断一个字符串是否符合
IP
v4地址的标准格式。文章还提供了Python代码示例,演示如何利用该正则表达式从文本中查找并
匹配
出所有合法的
IP
v4地址。
Krita-AI-Diffusion项目中
IP
-Adapter模型尺寸不
匹配
问题
解析
本文解析Krita-AI-Diffusion项目中
IP
-Adapter模型尺寸不
匹配
问题
。使用该项目时,加载模型会出现“size mismatch for proj.weight”错误,原因是模型组件版本不兼容。解决方案是确保CL
IP
视觉模型和
IP
-Adapter主模型版本一致,还给出了预防此类
问题
的措施。
python正则
匹配
ip
_[求助] 正则表达式
匹配
IP
地址的
问题
求助
本文详细解读了一个用于从包含
IP
地址、空元素和文字的列表中提取特定规律
IP
的正则表达式,重点讲解了(?<=,,)和(?=,)的含义,并解答了它们如何
匹配
空元素。
Eureka客户端注册
Ip
与实际
Ip
不
匹配
的
问题
本文介绍了解决Eureka客户端注册
IP
问题
的两种方法:一是通过修改配置文件bootstrap.yml来忽略特定网卡并指定注册的网段;二是直接禁用不需要的虚拟网卡。
C语言
70,039
社区成员
243,246
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章