使用Java

时间:2018-02-14 20:07:08

标签: java database db2 ip ipv4

我需要在Java中创建一个可管理IPv4(或未来的IPv6)的应用程序。用户将在该应用程序中管理他们的IP地址,超网和子网(创建/删除等)。我对这个架构有几个问题。

  1. 在DB2中存储/搜索IPv4及其前缀的最佳格式是什么(考虑到我将通过Java访问它们)?

  2. 他们也将使用私有IP地址范围,例如10.0.0.0/8,创建16777214个IP地址。其中,当他们尝试创建此网络时,他们将只使用0.1%的IP。我该如何在DB中定义它?我应该创建代表每个IP的1600万行,还是应该只在DB中创建使用过的IP?

  3. 我将使用DB2 10.5和Java 1.6。

2 个答案:

答案 0 :(得分:0)

只需使用文本格式,在java中他们使用字符串格式,如果你用ant来处理子网,那么只需要一些字符串函数来提取你需要的文件

答案 1 :(得分:0)

根据此答案Maximum length of the textual representation of an IPv6 address?,您可以使用45作为列的长度来存储IPv6地址,该地址也将容纳IPv4,因为它只有39个字符。

要回答第二个问题,您只能存储那些使用过的IP地址,并按IP列本身对其进行索引,以便检索更快。

这是一般性建议,并非特定于任何数据库。