CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  专题开发/技术/项目 >  网络通信

如果判断某个IP地址是否在某个地址范围?

楼主vinci(vinci)2005-05-18 10:05:30 在 专题开发/技术/项目 / 网络通信 提问

如一个IP地址:“10.0.0.1”  
  地址范围:“10.0.0.0”~“11.11.11.11”  
   
  问题点数:100、回复次数:7Top

1 楼merlinran(天行者)回复于 2005-05-18 11:55:27 得分 0

那不简单吗?你自己都给出答案来了。把地址与范围的边界一比,不就知道了吗?Top

2 楼LinYF1980(大羽飞鹤)回复于 2005-05-19 08:51:42 得分 0

就是  
  Top

3 楼boxban(冻酸梨)回复于 2005-05-19 09:00:00 得分 80

你的问题并不是很明确:  
  地址范围:“10.0.0.0”~“11.11.11.11”?IP地址大小的比较规则是什么呢?  
  11.10.200.200   在这个范围吗?   10.123.11.22   在这个范围吗?  
   
  实际上,如果明确了比较规则,代码应该就很简单了。  
  如果你按照IP地址的32位整数来比较,那是最简单的了:  
  ntohl(inet_aton("10.0.0.1"))   <   ntohl(inet_aton("11.0.0.1"))  
   
  Top

4 楼Caps77(厉兵秣马)回复于 2005-05-19 14:37:14 得分 10

 
  int IsValidIp(char   *szIP)  
  {  
  int   ip0,   ip1,   ip2,   ip3;  
  sscanf(szIP,   "%d.%d.%d.%d",   &ip0,   &ip1,   &ip2,   &ip3);  
  if((10<=ip0&&ip0<=11)&&(0<=ip1&&ip1<=11)  
  &&(0<=ip2&&ip2<=11)&&(0<=ip3&&ip3<11))  
  return   1;  
  return   0;  
  }Top

5 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2005-05-20 19:58:28 得分 0

自己定义好范围的区间,就好判断了Top

6 楼qrlvls( 空 气 )回复于 2005-05-20 20:11:42 得分 10

同意上面的这种方法:  
  IP地址以主机字节序存储就是一个四字节无符号整数  
  ntohl(inet_aton("10.0.0.1"))   <   ntohl(inet_aton("11.0.0.1"))Top

7 楼galois_godel()回复于 2005-05-21 12:27:55 得分 0

自己写一个比较函数,你想要怎么比就怎么比Top

相关问题

  • 判断一IP是否在某段IP地址范围内?
  • IP范围判断
  • =====国内IP地址范围=======
  • java怎样判断ip地址合法
  • 如何判断一个IP地址是否为本机地址?
  • 怎样判断ip地址不为广播地址?
  • 求中国的IP地址范围
  • 求IP地址范围查询方案:
  • 怎样由IP地址判断出IP所在的地区?
  • 如何判断用户输入的IP地址是否合法

关键词

  • ip
  • 地址
  • 范围
  • 比较规则
  • 简单

得分解答快速导航

  • 帖主:vinci
  • boxban
  • Caps77
  • qrlvls

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo