例如地址網絡掩碼對的:
如何獲得CIDR標記法10.66.114.0/24
的較低更高的IP地址在這種情況下,答案是:
10.66.114.1 - 10.66.114.254如何獲得IP範圍了CIDR標記法或使用Java
2
A
回答
4
下面是它的要點(我是一個C的傢伙):
unsigned int network = 0x0a427200; /* 10.66.114.0 */
unsigned int subnet_length = 24;
unsigned int mask = 0xfffffff << (32 - subnet_length);
unsigned int bcast = 0xffffffff >> (32 - subnet_length);
unsigned int start_ip = (network & mask) + 1;
unsigned int end_ip = (network & mask) + (bcast - 1);
-1
#include <ncurses.h>
// ncurses.h includes stdio.h
#include <math.h>
#include <stdlib.h>
// determine network range of masked ip. eg: 192.168.113.0/25
// unsigned int network = 0x0a427200; /* 10.66.114.0 */
// unsigned int subnet_length = 24;
//
// unsigned int mask = 0xfffffff << (32 - subnet_length);
// unsigned int bcast = 0xffffffff >> (32 - subnet_length);
//
// unsigned int start_ip = (network & mask) + 1;
// unsigned int end_ip = (network & mask) + (bcast - 1);
int main(int argc, char *argv[])
{
// char arg[50] = " ";
char ipmask[50] = "192.168.113.0/25";
// determine network range of masked ip. eg: 192.168.113.0/25
unsigned int network = 0xc0a87100; /* 192.168.113.0 */
unsigned int subnet_length = 25;
unsigned int mask = 0xfffffff << (32 - subnet_length);
unsigned int bcast = 0xffffffff >> (subnet_length);
// unsigned int bcast = 0xffffffff >> (32 - subnet_length);
unsigned int start_ip = (network & mask) + 1;
unsigned int end_ip = (network & mask) + (bcast);
initscr();
cbreak();
printw("\nipmask %s\nstart %x end %x range %x\n"
"press any key\n", ipmask, start_ip, end_ip, end_ip - start_ip + 1);
getch();
endwin(); // close ncurses library and restores previous console
return(0);
}
/*****************************************************************************/
// end netmask
gcc -Wall netmask.c -o netmask -lm -lncurses
+0
Errm ...這是C,而不是Java ... – Manu
相關問題
- 1. IP到CIDR/IP範圍
- 2. 使用PHP和CIDR計算IP範圍
- 3. IP屬於CIDR範圍
- 4. 如何使用Ruby將IP範圍轉換爲單個CIDR
- 5. 轉換IP範圍列表來CIDR
- 6. MySQL查詢CIDR轉換成IP範圍
- 7. 從MySQL的IP範圍中選擇CIDR
- 8. 選擇在IP範圍內的CIDR
- 9. 比較Ip的範圍列表(用CIDR)在Java中
- 10. 瞭解IP,CIDR以及IP如何映射到CIDR
- 11. 在Ruby/Rails中使用CIDR的IP範圍?
- 12. 將IP範圍轉換爲CIDR表示法的模塊,腳本或算法
- 13. oracle PL/SQL如何計算IPv6的範圍ip cidr
- 14. 使用eval獲得範圍
- 15. 計算子網CIDR範圍
- 16. 查找如果CIDR的IP範圍的IP存在手工的Python
- 17. 如何使用.htaccess阻止IP範圍
- 18. 獲取IP範圍與目標C
- 19. 如何在C#中獲取IP範圍?
- 20. Kubernetes - 以編程方式查找服務IP範圍CIDR
- 21. 檢查一個IP是否在Python的CIDR範圍內
- 22. 從CIDR範圍檢索最大/最小IP地址
- 23. 從IP範圍到CIDR掩碼的轉換
- 24. 檢查IP是否在CIDR網絡掩碼(範圍)
- 25. 我如何獲得第一個IP地址範圍?
- 26. 如何獲得下一個IP的範圍從Excel
- 27. 使用ipaddress和輸出到數據幀轉換CIDR IP地址範圍
- 28. 如何將ip1-ip2格式的IP範圍轉換爲cidr格式?
- 29. 如何將CIDR轉換爲C#中的網絡和IP地址範圍?
- 30. 如何計算IP範圍
重複的http://stackoverflow.com/questions/2942299 /轉換-CIDR的地址到子網掩碼-一個nd-network-address – bstick12
你的例子是錯誤的。它是10.66.114.0 - 10.66.114.255 – mailq