Class: IPIPX::IPv4DatabaseX
- Inherits:
-
Object
- Object
- IPIPX::IPv4DatabaseX
- Defined in:
- lib/ipip/ipv4_database_x.rb
Overview
Database for search IPv4 address.
The IPIP.net data file(ipip.datx) format in bytes::
---------------------------
| 4 bytes | <- offset number
---------------------------
| 256 * 9 bytes | <- first ip number index
---------------------------
| offset - 2304 - 4 bytes | <- ip index
---------------------------
| data storage |
---------------------------
Constant Summary collapse
- OFFSET_NUMBER_SIZE =
4- FIRST_IP_NUMBER_INDEX_SIZE =
256 * 1024
- IP_BLOCK_SIZE =
9
Instance Method Summary collapse
- #find(ip) ⇒ Object
-
#initialize(data_file) ⇒ IPv4DatabaseX
constructor
A new instance of IPv4DatabaseX.
Constructor Details
#initialize(data_file) ⇒ IPv4DatabaseX
Returns a new instance of IPv4DatabaseX.
26 27 28 |
# File 'lib/ipip/ipv4_database_x.rb', line 26 def initialize(data_file) @data_file = data_file end |
Instance Method Details
#find(ip) ⇒ Object
30 31 32 33 |
# File 'lib/ipip/ipv4_database_x.rb', line 30 def find(ip) ip = IPSocket::getaddress(ip) lookup_ipv4(ip) end |