ipparse 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/Manifest +40 -0
- data/README +6 -0
- data/Rakefile +13 -0
- data/bin/ipparse +13 -0
- data/data/0.txt +6910 -0
- data/data/116.txt +1068 -0
- data/data/117.txt +495 -0
- data/data/118.txt +307 -0
- data/data/119.txt +413 -0
- data/data/121.txt +1379 -0
- data/data/122.txt +752 -0
- data/data/123.txt +1018 -0
- data/data/124.txt +1572 -0
- data/data/125.txt +1401 -0
- data/data/192.txt +1353 -0
- data/data/193.txt +1093 -0
- data/data/194.txt +5066 -0
- data/data/195.txt +5772 -0
- data/data/202.txt +4786 -0
- data/data/203.txt +1392 -0
- data/data/210.txt +2371 -0
- data/data/211.txt +4043 -0
- data/data/212.txt +3112 -0
- data/data/213.txt +1244 -0
- data/data/217.txt +1014 -0
- data/data/218.txt +25238 -0
- data/data/219.txt +7886 -0
- data/data/220.txt +0 -0
- data/data/221.txt +7405 -0
- data/data/222.txt +9953 -0
- data/data/58.txt +2359 -0
- data/data/59.txt +1924 -0
- data/data/60.txt +2967 -0
- data/data/61.txt +15853 -0
- data/data/62.txt +1489 -0
- data/data/80.txt +757 -0
- data/data/81.txt +549 -0
- data/ipparse.gemspec +34 -0
- data/lib/ipparse.rb +39 -0
- data/lib/version.rb +3 -0
- data/test/test_ipparse.rb +14 -0
- metadata +101 -0
data/data/81.txt
ADDED
@@ -0,0 +1,549 @@
|
|
1
|
+
000.000.000 001.086.255 俄罗斯
|
2
|
+
001.087.000 001.087.255 英国
|
3
|
+
001.088.000 002.063.255 俄罗斯
|
4
|
+
002.064.000 002.127.255 英国
|
5
|
+
002.128.000 002.191.255 德国
|
6
|
+
002.192.000 002.255.255 捷克共和国
|
7
|
+
003.000.000 003.063.255 德国
|
8
|
+
003.064.000 003.127.255 英国
|
9
|
+
003.128.000 003.191.255 俄罗斯
|
10
|
+
003.192.000 003.255.255 奥地利
|
11
|
+
004.000.000 004.063.255 埃及
|
12
|
+
004.064.000 004.127.255 荷兰
|
13
|
+
004.128.000 004.175.255 塞浦路斯
|
14
|
+
004.176.000 004.191.255 叙利亚
|
15
|
+
004.192.000 004.255.255 俄罗斯
|
16
|
+
005.000.000 005.063.255 以色列
|
17
|
+
005.064.000 005.127.255 俄罗斯
|
18
|
+
005.128.000 005.191.255 英国
|
19
|
+
005.192.000 005.255.255 奥地利
|
20
|
+
006.000.000 006.063.255 瑞士
|
21
|
+
006.064.000 006.127.255 土尔其
|
22
|
+
006.128.000 006.191.255 波兰
|
23
|
+
006.192.000 007.063.255 英国
|
24
|
+
007.064.000 007.127.255 立陶宛
|
25
|
+
007.128.000 007.191.255 丹麦
|
26
|
+
007.192.000 007.223.255 德国
|
27
|
+
007.224.000 007.255.255 瑞士
|
28
|
+
008.000.000 008.127.255 土耳其
|
29
|
+
008.128.000 008.255.255 瑞典
|
30
|
+
009.000.000 009.047.255 俄罗斯
|
31
|
+
009.048.000 009.049.255 美国
|
32
|
+
009.050.000 009.051.255 意大利
|
33
|
+
009.052.000 009.061.255 美国
|
34
|
+
009.062.000 009.127.255 俄罗斯
|
35
|
+
009.128.000 009.255.255 西班牙
|
36
|
+
010.000.000 010.127.255 埃及
|
37
|
+
010.128.000 010.255.255 奥地利
|
38
|
+
011.000.000 011.127.255 德国
|
39
|
+
011.128.000 011.255.255 比利时
|
40
|
+
012.000.000 012.112.255 伊朗
|
41
|
+
012.113.000 012.127.255 Unknown
|
42
|
+
012.128.000 012.255.255 罗马尼亚
|
43
|
+
013.000.000 013.127.255 俄罗斯
|
44
|
+
013.128.000 013.255.255 瑞士
|
45
|
+
014.000.000 014.127.255 英国
|
46
|
+
014.128.000 014.255.255 德国
|
47
|
+
015.000.000 015.127.255 冰岛
|
48
|
+
015.128.000 015.255.255 波兰
|
49
|
+
016.000.000 016.015.255 俄罗斯
|
50
|
+
016.016.000 016.031.255 英国
|
51
|
+
016.032.000 016.047.255 奥地利
|
52
|
+
016.048.000 016.063.255 德国
|
53
|
+
016.064.000 016.079.255 芬兰
|
54
|
+
016.080.000 016.095.255 俄罗斯
|
55
|
+
016.096.000 016.111.255 奥地利
|
56
|
+
016.112.000 016.143.255 俄罗斯
|
57
|
+
016.144.000 016.159.255 奥地利
|
58
|
+
016.160.000 016.175.255 瑞典
|
59
|
+
016.176.000 016.191.255 德国
|
60
|
+
016.192.000 016.207.255 匈牙利
|
61
|
+
016.208.000 016.223.255 俄罗斯
|
62
|
+
016.224.000 016.239.255 立陶宛
|
63
|
+
016.240.000 016.255.255 英国
|
64
|
+
017.000.000 017.031.255 俄罗斯
|
65
|
+
017.032.000 017.063.255 荷兰
|
66
|
+
017.064.000 017.079.255 英国
|
67
|
+
017.080.000 017.095.255 阿塞拜疆
|
68
|
+
017.096.000 017.127.255 德国
|
69
|
+
017.128.000 017.143.255 乌克兰
|
70
|
+
017.144.000 017.159.255 俄罗斯
|
71
|
+
017.160.000 017.175.255 欧洲
|
72
|
+
017.176.000 017.191.255 匈牙利
|
73
|
+
017.192.000 017.207.255 芬兰
|
74
|
+
017.208.000 017.223.255 德国
|
75
|
+
017.224.000 017.239.255 斯洛文尼亚
|
76
|
+
017.240.000 017.255.255 冰岛
|
77
|
+
018.000.000 018.015.255 荷兰
|
78
|
+
018.016.000 018.031.255 瑞士
|
79
|
+
018.032.000 018.047.255 尼日利亚
|
80
|
+
018.048.000 018.063.255 塞尔维亚
|
81
|
+
018.064.000 018.095.255 罗马尼亚
|
82
|
+
018.096.000 018.111.255 德国
|
83
|
+
018.112.000 018.159.255 俄罗斯
|
84
|
+
018.160.000 018.175.255 荷兰
|
85
|
+
018.176.000 018.191.255 法国
|
86
|
+
018.192.000 018.223.255 波兰
|
87
|
+
018.224.000 018.239.255 法罗群岛
|
88
|
+
018.240.000 018.255.255 荷兰
|
89
|
+
019.000.000 019.015.255 捷克
|
90
|
+
019.016.000 019.031.255 法国
|
91
|
+
019.032.000 019.047.255 捷克
|
92
|
+
019.048.000 019.063.255 英国
|
93
|
+
019.064.000 019.095.255 俄罗斯
|
94
|
+
019.096.000 019.111.255 西班牙
|
95
|
+
019.112.000 019.127.255 芬兰
|
96
|
+
019.128.000 019.143.255 俄罗斯
|
97
|
+
019.144.000 019.159.255 奥地利
|
98
|
+
019.160.000 019.175.255 西班牙
|
99
|
+
019.176.000 019.223.255 英国
|
100
|
+
019.224.000 019.255.255 丹麦
|
101
|
+
020.000.000 020.015.255 英国
|
102
|
+
020.016.000 020.031.255 吉尔吉斯斯坦
|
103
|
+
020.032.000 020.063.255 英国
|
104
|
+
020.064.000 020.079.255 荷兰
|
105
|
+
020.080.000 020.095.255 德国
|
106
|
+
020.096.000 020.111.255 俄罗斯
|
107
|
+
020.112.000 020.127.255 德国
|
108
|
+
020.128.000 020.143.255 法国
|
109
|
+
020.144.000 020.159.255 爱沙尼亚
|
110
|
+
020.160.000 020.175.255 俄罗斯
|
111
|
+
020.176.000 020.191.255 英国
|
112
|
+
020.192.000 020.207.255 俄罗斯
|
113
|
+
020.208.000 020.223.255 法国
|
114
|
+
020.224.000 020.239.255 芬兰
|
115
|
+
020.240.000 020.255.255 葡萄牙
|
116
|
+
021.000.000 021.015.255 乌克兰
|
117
|
+
021.016.000 021.031.255 奥地利
|
118
|
+
021.032.000 021.047.255 塞浦路斯
|
119
|
+
021.048.000 021.063.255 沙特阿拉伯
|
120
|
+
021.064.000 021.079.255 英国
|
121
|
+
021.080.000 021.095.255 阿塞拜疆
|
122
|
+
021.096.000 021.111.255 埃及
|
123
|
+
021.112.000 021.127.255 奥地利
|
124
|
+
021.128.000 021.143.255 意大利
|
125
|
+
021.144.000 021.159.255 爱尔兰
|
126
|
+
021.160.000 021.175.255 土耳其
|
127
|
+
021.176.000 021.191.255 荷兰
|
128
|
+
021.192.000 021.207.255 波兰
|
129
|
+
021.208.000 021.223.255 瑞典
|
130
|
+
021.224.000 021.239.255 俄罗斯
|
131
|
+
021.240.000 021.255.255 爱沙尼亚
|
132
|
+
022.000.000 022.015.255 俄罗斯
|
133
|
+
022.016.000 022.031.255 巴林
|
134
|
+
022.032.000 022.047.255 英国
|
135
|
+
022.048.000 022.063.255 俄罗斯
|
136
|
+
022.064.000 022.095.255 阿尔及利亚
|
137
|
+
022.096.000 022.111.255 土耳其
|
138
|
+
022.112.000 022.127.255 俄罗斯
|
139
|
+
022.128.000 022.143.255 乌克兰
|
140
|
+
022.144.000 022.159.255 罗马尼亚
|
141
|
+
022.160.000 022.175.255 芬兰
|
142
|
+
022.176.000 022.191.255 匈牙利
|
143
|
+
022.192.000 022.223.255 俄罗斯
|
144
|
+
022.224.000 022.239.255 德国
|
145
|
+
022.240.000 022.255.255 芬兰
|
146
|
+
023.000.000 023.015.255 立陶宛
|
147
|
+
023.016.000 023.031.255 乌克兰
|
148
|
+
023.032.000 023.047.255 法国
|
149
|
+
023.048.000 023.063.255 英国
|
150
|
+
023.064.000 023.079.255 瑞士
|
151
|
+
023.080.000 023.095.255 意大利
|
152
|
+
023.096.000 023.159.255 俄罗斯
|
153
|
+
023.160.000 023.175.255 伊朗
|
154
|
+
023.176.000 023.191.255 俄罗斯
|
155
|
+
023.192.000 023.207.255 爱尔兰
|
156
|
+
023.208.000 023.223.255 英国
|
157
|
+
023.224.000 024.015.255 荷兰
|
158
|
+
024.016.000 024.031.255 罗马尼亚
|
159
|
+
024.032.000 024.047.255 德国
|
160
|
+
024.048.000 024.063.255 荷兰
|
161
|
+
024.064.000 024.079.255 德国
|
162
|
+
024.080.000 024.095.255 俄罗斯
|
163
|
+
024.096.000 024.111.255 斯洛文尼亚
|
164
|
+
024.112.000 024.143.255 俄罗斯
|
165
|
+
024.144.000 024.159.255 奥地利
|
166
|
+
024.160.000 024.175.255 西班牙
|
167
|
+
024.176.000 024.191.255 希腊
|
168
|
+
024.192.000 024.207.255 英国
|
169
|
+
024.208.000 024.223.255 乌克兰
|
170
|
+
024.224.000 024.239.255 意大利
|
171
|
+
024.240.000 024.255.255 英国
|
172
|
+
025.000.000 025.015.255 俄罗斯
|
173
|
+
025.016.000 025.031.255 捷克
|
174
|
+
025.032.000 025.047.255 白俄罗斯
|
175
|
+
025.048.000 025.079.255 俄罗斯
|
176
|
+
025.080.000 025.095.255 瑞典
|
177
|
+
025.096.000 025.111.255 意大利
|
178
|
+
025.112.000 025.127.255 西班牙
|
179
|
+
025.128.000 025.143.255 俄罗斯
|
180
|
+
025.144.000 025.159.255 瑞典
|
181
|
+
025.160.000 025.175.255 俄罗斯
|
182
|
+
025.176.000 025.191.255 法罗群岛
|
183
|
+
025.192.000 025.207.255 法国
|
184
|
+
025.208.000 025.223.255 奥地利
|
185
|
+
025.224.000 025.239.255 乌克兰
|
186
|
+
025.240.000 025.255.255 Unknown
|
187
|
+
026.000.000 026.031.255 波兰
|
188
|
+
026.032.000 026.063.255 挪威
|
189
|
+
026.064.000 026.079.255 阿尔及利亚
|
190
|
+
026.080.000 026.095.255 俄罗斯
|
191
|
+
026.096.000 026.127.255 英国
|
192
|
+
026.128.000 026.159.255 俄罗斯
|
193
|
+
026.160.000 026.175.255 格鲁吉亚
|
194
|
+
026.176.000 026.191.255 俄罗斯
|
195
|
+
026.192.000 026.207.255 意大利
|
196
|
+
026.208.000 026.223.255 荷兰
|
197
|
+
026.224.000 027.015.255 瑞典
|
198
|
+
027.016.000 027.031.255 法国
|
199
|
+
027.032.000 027.047.255 挪威
|
200
|
+
027.048.000 027.063.255 俄罗斯
|
201
|
+
027.064.000 027.111.255 英国
|
202
|
+
027.112.000 027.127.255 德国
|
203
|
+
027.128.000 027.143.255 意大利
|
204
|
+
027.144.000 027.159.255 俄罗斯
|
205
|
+
027.160.000 027.175.255 德国
|
206
|
+
027.176.000 027.191.255 意大利
|
207
|
+
027.192.000 027.207.255 捷克
|
208
|
+
027.208.000 027.223.255 意大利
|
209
|
+
027.224.000 027.239.255 德国
|
210
|
+
027.240.000 028.015.255 俄罗斯
|
211
|
+
028.016.000 028.031.255 捷克
|
212
|
+
028.032.000 028.063.255 伊朗
|
213
|
+
028.064.000 028.079.255 德国
|
214
|
+
028.080.000 028.095.255 荷兰
|
215
|
+
028.096.000 028.111.255 法国
|
216
|
+
028.112.000 028.127.255 约旦
|
217
|
+
028.128.000 028.143.255 奥地利
|
218
|
+
028.144.000 028.159.255 英国
|
219
|
+
028.160.000 028.191.255 俄罗斯
|
220
|
+
028.192.000 028.207.255 法国
|
221
|
+
028.208.000 028.223.255 俄罗斯
|
222
|
+
028.224.000 028.239.255 德国
|
223
|
+
028.240.000 028.255.255 意大利
|
224
|
+
029.000.000 029.015.255 荷兰
|
225
|
+
029.016.000 029.031.255 立陶宛
|
226
|
+
029.032.000 029.047.255 挪威
|
227
|
+
029.048.000 029.095.255 英国
|
228
|
+
029.096.000 029.111.255 埃及
|
229
|
+
029.112.000 029.127.255 俄罗斯
|
230
|
+
029.128.000 029.143.255 芬兰
|
231
|
+
029.144.000 029.159.255 意大利
|
232
|
+
029.160.000 029.175.255 卡塔尔
|
233
|
+
029.176.000 029.239.255 意大利
|
234
|
+
029.240.000 029.255.255 俄罗斯
|
235
|
+
030.000.000 030.047.255 意大利
|
236
|
+
030.048.000 030.063.255 俄罗斯
|
237
|
+
030.064.000 030.079.255 意大利
|
238
|
+
030.080.000 030.095.255 白俄罗斯
|
239
|
+
030.096.000 030.111.255 德国
|
240
|
+
030.112.000 030.127.255 俄罗斯
|
241
|
+
030.128.000 030.143.255 德国
|
242
|
+
030.144.000 030.159.255 阿塞拜疆
|
243
|
+
030.160.000 030.175.255 乌克兰
|
244
|
+
030.176.000 030.223.255 俄罗斯
|
245
|
+
030.224.000 030.255.255 捷克
|
246
|
+
031.000.000 031.031.255 英国
|
247
|
+
031.032.000 031.047.255 捷克
|
248
|
+
031.048.000 031.063.255 芬兰
|
249
|
+
031.064.000 031.079.255 意大利
|
250
|
+
031.080.000 031.095.255 丹麦
|
251
|
+
031.096.000 031.127.255 英国
|
252
|
+
031.128.000 031.143.255 奥地利
|
253
|
+
031.144.000 031.159.255 意大利
|
254
|
+
031.160.000 031.191.255 伊朗
|
255
|
+
031.192.000 031.207.255 荷兰
|
256
|
+
031.208.000 031.223.255 意大利
|
257
|
+
031.224.000 031.255.255 挪威
|
258
|
+
032.000.000 047.255.255 西班牙
|
259
|
+
048.000.000 052.160.255 法国
|
260
|
+
052.161.000 052.169.255 阿尔及利亚
|
261
|
+
052.170.000 058.255.255 法国
|
262
|
+
059.000.000 059.255.255 荷兰
|
263
|
+
060.000.000 060.063.255 法国
|
264
|
+
060.064.000 060.065.255 西班牙
|
265
|
+
060.066.000 061.255.255 法国
|
266
|
+
062.000.000 062.191.255 瑞士
|
267
|
+
062.192.000 067.255.255 法国
|
268
|
+
068.000.000 071.255.255 荷兰
|
269
|
+
072.000.000 075.255.255 意大利
|
270
|
+
076.000.000 079.255.255 英国
|
271
|
+
080.000.000 080.247.255 法国
|
272
|
+
080.248.000 080.255.255 Unknown
|
273
|
+
081.000.000 081.255.255 意大利
|
274
|
+
082.000.000 082.095.255 Unknown
|
275
|
+
082.096.000 083.255.255 比利时
|
276
|
+
084.000.000 084.255.255 葡萄牙
|
277
|
+
085.000.000 085.255.255 Unknown
|
278
|
+
086.000.000 087.255.255 英国
|
279
|
+
088.000.000 088.015.255 瑞典
|
280
|
+
088.016.000 088.047.255 德国
|
281
|
+
088.048.000 088.063.255 意大利
|
282
|
+
088.064.000 088.079.255 哈萨克斯坦
|
283
|
+
088.080.000 088.095.255 俄罗斯
|
284
|
+
088.096.000 088.111.255 法国
|
285
|
+
088.112.000 088.127.255 俄罗斯
|
286
|
+
088.128.000 088.143.255 斯洛伐克
|
287
|
+
088.144.000 088.159.255 哈萨克斯坦
|
288
|
+
088.160.000 088.175.255 英国
|
289
|
+
088.176.000 088.191.255 瑞士
|
290
|
+
088.192.000 088.207.255 吉尔吉斯斯坦
|
291
|
+
088.208.000 088.223.255 俄罗斯
|
292
|
+
088.224.000 088.255.255 意大利
|
293
|
+
089.000.000 089.031.255 罗马尼亚
|
294
|
+
089.032.000 089.047.255 西班牙
|
295
|
+
089.048.000 089.063.255 斯洛伐克
|
296
|
+
089.064.000 089.079.255 俄罗斯
|
297
|
+
089.080.000 089.095.255 欧洲
|
298
|
+
089.096.000 089.111.255 德国
|
299
|
+
089.112.000 089.127.255 俄罗斯
|
300
|
+
089.128.000 089.143.255 英国
|
301
|
+
089.144.000 089.159.255 爱尔兰
|
302
|
+
089.160.000 089.175.255 英国
|
303
|
+
089.176.000 089.191.255 俄罗斯
|
304
|
+
089.192.000 089.207.255 德国
|
305
|
+
089.208.000 089.223.255 亚美尼亚
|
306
|
+
089.224.000 089.255.255 德国
|
307
|
+
090.000.000 090.015.255 俄罗斯
|
308
|
+
090.016.000 090.031.255 伊拉克
|
309
|
+
090.032.000 090.047.255 德国
|
310
|
+
090.048.000 090.063.255 英国
|
311
|
+
090.064.000 090.079.255 芬兰
|
312
|
+
090.080.000 090.095.255 英国
|
313
|
+
090.096.000 090.111.255 西班牙
|
314
|
+
090.112.000 090.127.255 爱沙尼亚
|
315
|
+
090.128.000 090.143.255 英国
|
316
|
+
090.144.000 090.159.255 伊朗
|
317
|
+
090.160.000 090.175.255 捷克
|
318
|
+
090.176.000 090.191.255 斯洛文尼亚
|
319
|
+
090.192.000 090.207.255 德国
|
320
|
+
090.208.000 090.223.255 俄罗斯
|
321
|
+
090.224.000 090.239.255 乌克兰
|
322
|
+
090.240.000 090.255.255 捷克
|
323
|
+
091.000.000 091.015.255 荷兰
|
324
|
+
091.016.000 091.031.255 土耳其
|
325
|
+
091.032.000 091.063.255 俄罗斯
|
326
|
+
091.064.000 091.079.255 法国
|
327
|
+
091.080.000 091.095.255 捷克
|
328
|
+
091.096.000 091.111.255 英国
|
329
|
+
091.112.000 091.127.255 塞浦路斯
|
330
|
+
091.128.000 091.159.255 伊朗
|
331
|
+
091.160.000 091.175.255 德国
|
332
|
+
091.176.000 091.191.255 俄罗斯
|
333
|
+
091.192.000 091.207.255 英国
|
334
|
+
091.208.000 091.223.255 捷克
|
335
|
+
091.224.000 091.239.255 贝宁
|
336
|
+
091.240.000 091.255.255 英国
|
337
|
+
092.000.000 092.031.255 德国
|
338
|
+
092.032.000 092.047.255 意大利
|
339
|
+
092.048.000 092.063.255 希腊
|
340
|
+
092.064.000 092.079.255 瑞典
|
341
|
+
092.080.000 092.095.255 法国
|
342
|
+
092.096.000 092.111.255 瑞士
|
343
|
+
092.112.000 092.127.255 法国
|
344
|
+
092.128.000 092.143.255 西班牙
|
345
|
+
092.144.000 092.159.255 捷克
|
346
|
+
092.160.000 092.175.255 德国
|
347
|
+
092.176.000 092.191.255 荷兰
|
348
|
+
092.192.000 092.223.255 葡萄牙
|
349
|
+
092.224.000 092.239.255 卢森堡
|
350
|
+
092.240.000 092.255.255 奥地利
|
351
|
+
093.000.000 093.031.255 法国
|
352
|
+
093.032.000 093.047.255 伊朗
|
353
|
+
093.048.000 093.063.255 荷兰
|
354
|
+
093.064.000 093.095.255 波黑
|
355
|
+
093.096.000 093.111.255 挪威
|
356
|
+
093.112.000 093.127.255 德国
|
357
|
+
093.128.000 093.159.255 瑞典
|
358
|
+
093.160.000 093.175.255 挪威
|
359
|
+
093.176.000 093.191.255 法国
|
360
|
+
093.192.000 093.207.255 匈牙利
|
361
|
+
093.208.000 093.223.255 西班牙
|
362
|
+
093.224.000 093.239.255 英国
|
363
|
+
093.240.000 093.255.255 法国
|
364
|
+
094.000.000 094.015.255 波黑
|
365
|
+
094.016.000 094.047.255 俄罗斯
|
366
|
+
094.048.000 094.063.255 奥地利
|
367
|
+
094.064.000 094.095.255 瑞典
|
368
|
+
094.096.000 094.127.255 瑞士
|
369
|
+
094.128.000 094.159.255 俄罗斯
|
370
|
+
094.160.000 094.175.255 荷兰
|
371
|
+
094.176.000 094.191.255 挪威
|
372
|
+
094.192.000 094.207.255 巴林
|
373
|
+
094.208.000 094.223.255 英国
|
374
|
+
094.224.000 094.239.255 拉脱维亚
|
375
|
+
094.240.000 094.255.255 匈牙利
|
376
|
+
095.000.000 095.015.255 德国
|
377
|
+
095.016.000 095.047.255 俄罗斯
|
378
|
+
095.048.000 095.063.255 英国
|
379
|
+
095.064.000 095.079.255 西班牙
|
380
|
+
095.080.000 095.095.255 卢森堡
|
381
|
+
095.096.000 095.111.255 捷克
|
382
|
+
095.112.000 095.127.255 比利时
|
383
|
+
095.128.000 095.143.255 俄罗斯
|
384
|
+
095.144.000 095.159.255 英国
|
385
|
+
095.160.000 095.175.255 格鲁吉亚
|
386
|
+
095.176.000 095.191.255 乌克兰
|
387
|
+
095.192.000 095.207.255 英国
|
388
|
+
095.208.000 095.223.255 俄罗斯
|
389
|
+
095.224.000 095.239.255 乌兹别克斯坦
|
390
|
+
095.240.000 095.255.255 丹麦
|
391
|
+
096.000.000 111.255.255 英国
|
392
|
+
112.000.000 127.255.255 意大利
|
393
|
+
128.000.000 159.255.255 英国
|
394
|
+
160.000.000 160.127.255 德国
|
395
|
+
160.128.000 160.255.255 匈牙利
|
396
|
+
161.000.000 161.127.255 德国
|
397
|
+
161.128.000 161.191.255 丹麦
|
398
|
+
161.192.000 161.207.255 英国
|
399
|
+
161.208.000 161.223.255 保加利亚
|
400
|
+
161.224.000 161.239.255 波兰
|
401
|
+
161.240.000 161.255.255 保加利亚
|
402
|
+
162.000.000 162.255.255 挪威
|
403
|
+
163.000.000 163.255.255 德国
|
404
|
+
164.000.000 164.109.255 英国
|
405
|
+
164.110.000 165.044.255 比利时
|
406
|
+
165.045.000 165.201.255 英国
|
407
|
+
165.202.000 165.202.255 比利时
|
408
|
+
165.203.000 165.255.255 英国
|
409
|
+
166.000.000 167.255.255 挪威
|
410
|
+
168.000.000 168.149.255 英国
|
411
|
+
168.150.000 168.255.255 波兰
|
412
|
+
169.000.000 169.127.255 比利时
|
413
|
+
169.128.000 169.255.255 德国
|
414
|
+
170.000.000 170.127.255 英国
|
415
|
+
170.128.000 170.255.255 瑞典
|
416
|
+
171.000.000 171.127.255 荷兰
|
417
|
+
171.128.000 172.099.255 英国
|
418
|
+
172.100.000 172.200.255 瑞典
|
419
|
+
172.201.000 172.255.255 英国
|
420
|
+
173.000.000 173.127.255 荷兰
|
421
|
+
173.128.000 173.255.255 德国
|
422
|
+
174.000.000 174.005.255 英国
|
423
|
+
174.006.000 174.007.255 意大利
|
424
|
+
174.008.000 174.255.255 英国
|
425
|
+
175.000.000 175.127.255 荷兰
|
426
|
+
175.128.000 175.255.255 芬兰
|
427
|
+
176.000.000 176.069.063 英国
|
428
|
+
176.069.064 176.069.127 俄罗斯
|
429
|
+
176.069.128 180.127.255 英国
|
430
|
+
180.128.000 181.154.255 罗马尼亚
|
431
|
+
181.155.000 181.255.255 Unknown
|
432
|
+
182.000.000 183.255.255 匈牙利
|
433
|
+
184.000.000 184.255.255 西班牙
|
434
|
+
185.000.000 185.016.255 Unknown
|
435
|
+
185.017.000 185.253.255 法国
|
436
|
+
185.254.000 185.255.255 Unknown
|
437
|
+
186.000.000 186.223.255 希腊
|
438
|
+
186.224.000 186.239.255 波兰
|
439
|
+
186.240.000 186.255.255 瑞典
|
440
|
+
187.000.000 187.255.255 英国
|
441
|
+
188.000.000 188.255.255 比利时
|
442
|
+
189.000.000 189.029.255 Unknown
|
443
|
+
189.030.000 189.030.255 澳门
|
444
|
+
189.031.000 189.255.255 Unknown
|
445
|
+
190.000.000 190.024.255 波兰
|
446
|
+
190.025.000 190.255.255 Unknown
|
447
|
+
191.000.000 191.255.255 挪威
|
448
|
+
192.000.000 192.255.255 摩洛哥
|
449
|
+
193.000.000 193.255.255 葡萄牙
|
450
|
+
194.000.000 194.255.255 Unknown
|
451
|
+
195.000.000 195.255.255 俄罗斯
|
452
|
+
196.000.000 196.255.255 罗马尼亚
|
453
|
+
197.000.000 197.255.255 芬兰
|
454
|
+
198.000.000 198.143.255 拉托维亚
|
455
|
+
198.144.000 199.005.255 Unknown
|
456
|
+
199.006.000 199.006.255 尼日利亚
|
457
|
+
199.007.000 199.007.255 Unknown
|
458
|
+
199.008.000 199.011.255 布隆迪
|
459
|
+
199.012.000 199.015.255 喀麦隆
|
460
|
+
199.016.000 199.023.255 Unknown
|
461
|
+
199.024.000 199.024.255 乌干达
|
462
|
+
199.025.000 199.031.255 Unknown
|
463
|
+
199.032.000 199.032.255 坦桑尼亚
|
464
|
+
199.033.000 199.048.255 Unknown
|
465
|
+
199.049.000 199.049.255 以色列
|
466
|
+
199.050.000 199.083.255 Unknown
|
467
|
+
199.084.000 199.087.255 尼日利亚
|
468
|
+
199.088.000 199.091.255 Unknown
|
469
|
+
199.092.000 199.093.255 加纳
|
470
|
+
199.094.000 199.095.255 Unknown
|
471
|
+
199.096.000 199.103.255 赞比亚
|
472
|
+
199.104.000 199.107.255 Unknown
|
473
|
+
199.108.000 199.111.255 加纳
|
474
|
+
199.112.000 199.112.255 坦桑尼亚
|
475
|
+
199.113.000 199.132.255 Unknown
|
476
|
+
199.133.000 199.133.255 尼日利亚
|
477
|
+
199.134.000 199.167.255 Unknown
|
478
|
+
199.168.000 199.169.255 刚果
|
479
|
+
199.170.000 199.255.255 法国
|
480
|
+
200.000.000 200.031.255 俄罗斯
|
481
|
+
200.032.000 200.047.255 法国
|
482
|
+
200.048.000 200.063.255 捷克
|
483
|
+
200.064.000 200.079.255 英国
|
484
|
+
200.080.000 200.095.255 俄罗斯
|
485
|
+
200.096.000 200.111.255 德国
|
486
|
+
200.112.000 200.127.255 俄罗斯
|
487
|
+
200.128.000 200.143.255 意大利
|
488
|
+
200.144.000 200.159.255 俄罗斯
|
489
|
+
200.160.000 200.175.255 瑞典
|
490
|
+
200.176.000 200.191.255 法国
|
491
|
+
200.192.000 200.207.255 德国
|
492
|
+
200.208.000 200.223.255 俄罗斯
|
493
|
+
200.224.000 200.239.255 意大利
|
494
|
+
200.240.000 200.255.255 俄罗斯
|
495
|
+
201.000.000 201.015.255 意大利
|
496
|
+
201.016.000 201.031.255 俄罗斯
|
497
|
+
201.032.000 201.047.255 德国
|
498
|
+
201.048.000 201.063.255 捷克
|
499
|
+
201.064.000 201.079.255 俄罗斯
|
500
|
+
201.080.000 201.095.255 比利时
|
501
|
+
201.096.000 201.127.255 德国
|
502
|
+
201.128.000 201.143.255 英国
|
503
|
+
201.144.000 201.159.255 德国
|
504
|
+
201.160.000 201.175.255 英国
|
505
|
+
201.176.000 201.191.255 法国
|
506
|
+
201.192.000 201.207.255 瑞士
|
507
|
+
201.208.000 201.223.255 瑞典
|
508
|
+
201.224.000 201.239.255 德国
|
509
|
+
201.240.000 201.255.255 俄罗斯
|
510
|
+
202.000.000 203.255.255 西班牙
|
511
|
+
204.000.000 204.255.255 荷兰
|
512
|
+
205.000.000 205.255.255 Unknown
|
513
|
+
206.000.000 206.255.255 荷兰
|
514
|
+
207.000.000 207.255.255 Unknown
|
515
|
+
208.000.000 208.106.255 意大利
|
516
|
+
208.107.000 208.159.255 Unknown
|
517
|
+
208.160.000 208.167.255 英国
|
518
|
+
208.168.000 208.255.255 Unknown
|
519
|
+
209.000.000 209.127.255 芬兰
|
520
|
+
209.128.000 209.255.255 德国
|
521
|
+
210.000.000 210.127.255 波兰
|
522
|
+
210.128.000 210.255.255 德国
|
523
|
+
211.000.000 211.127.255 俄罗斯
|
524
|
+
211.128.000 211.255.255 意大利
|
525
|
+
212.000.000 215.215.255 土耳其
|
526
|
+
215.216.000 215.255.255 Unknown
|
527
|
+
216.000.000 216.255.255 瑞典
|
528
|
+
217.000.000 217.017.255 Unknown
|
529
|
+
217.018.000 217.032.255 奥地利
|
530
|
+
217.033.000 218.001.255 Unknown
|
531
|
+
218.002.000 218.169.255 以色列
|
532
|
+
218.170.000 218.255.255 Unknown
|
533
|
+
219.000.000 219.255.255 波兰
|
534
|
+
220.000.000 221.017.255 法国
|
535
|
+
221.018.000 222.016.255 瑞士
|
536
|
+
222.017.000 222.017.255 俄罗斯
|
537
|
+
222.018.000 222.255.255 瑞士
|
538
|
+
223.000.000 223.255.255 奥地利
|
539
|
+
224.000.000 224.163.255 瑞士
|
540
|
+
224.164.000 227.208.255 瑞典
|
541
|
+
227.209.000 228.255.255 法国
|
542
|
+
229.000.000 229.255.255 瑞典
|
543
|
+
230.000.000 231.255.255 法国
|
544
|
+
232.000.000 232.255.255 瑞典
|
545
|
+
233.000.000 235.255.255 法国
|
546
|
+
236.000.000 236.255.255 瑞典
|
547
|
+
237.000.000 239.255.255 法国
|
548
|
+
240.000.000 247.255.255 比利时
|
549
|
+
248.000.000 255.255.255 法国
|
data/ipparse.gemspec
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
|
3
|
+
Gem::Specification.new do |s|
|
4
|
+
s.name = %q{ipparse}
|
5
|
+
s.version = "0.0.1"
|
6
|
+
|
7
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
|
+
s.authors = ["Zhang Jinzhu"]
|
9
|
+
s.date = %q{2009-02-17}
|
10
|
+
s.default_executable = %q{ipparse}
|
11
|
+
s.description = %q{IP Parse}
|
12
|
+
s.email = %q{wosmvp@gmail.com}
|
13
|
+
s.executables = ["ipparse"]
|
14
|
+
s.extra_rdoc_files = ["README", "bin/ipparse", "lib/ipparse.rb", "lib/version.rb"]
|
15
|
+
s.files = ["Manifest", "test/test_ipparse.rb", "README", "bin/ipparse", "Rakefile", "data/116.txt", "data/203.txt", "data/59.txt", "data/213.txt", "data/194.txt", "data/193.txt", "data/61.txt", "data/220.txt", "data/217.txt", "data/81.txt", "data/219.txt", "data/60.txt", "data/195.txt", "data/125.txt", "data/80.txt", "data/202.txt", "data/58.txt", "data/124.txt", "data/118.txt", "data/212.txt", "data/123.txt", "data/122.txt", "data/62.txt", "data/192.txt", "data/210.txt", "data/222.txt", "data/211.txt", "data/218.txt", "data/121.txt", "data/119.txt", "data/0.txt", "data/221.txt", "data/117.txt", "lib/ipparse.rb", "lib/version.rb", "ipparse.gemspec"]
|
16
|
+
s.has_rdoc = true
|
17
|
+
s.homepage = %q{http://www.zhangjinzhu.com}
|
18
|
+
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Ipparse", "--main", "README"]
|
19
|
+
s.require_paths = ["lib"]
|
20
|
+
s.rubyforge_project = %q{ipparse}
|
21
|
+
s.rubygems_version = %q{1.3.1}
|
22
|
+
s.summary = %q{IP Parse}
|
23
|
+
s.test_files = ["test/test_ipparse.rb"]
|
24
|
+
|
25
|
+
if s.respond_to? :specification_version then
|
26
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
27
|
+
s.specification_version = 2
|
28
|
+
|
29
|
+
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
30
|
+
else
|
31
|
+
end
|
32
|
+
else
|
33
|
+
end
|
34
|
+
end
|
data/lib/ipparse.rb
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
$KCODE = 'UTF8'
|
2
|
+
# IPV4
|
3
|
+
class IPParse
|
4
|
+
@@data ||= []
|
5
|
+
|
6
|
+
def self.parse(ip)
|
7
|
+
return false unless ip.to_s =~ /(\d+\.){3}\d+/
|
8
|
+
ip,addr = format(ip) , ''
|
9
|
+
|
10
|
+
[ip[0,3].to_i,0].each do |f|
|
11
|
+
file = "#{File.dirname(__FILE__)}/../data/#{f.to_s}.txt"
|
12
|
+
@@data[f] ||= File.exist?(file) ? File.new(file).to_a : false
|
13
|
+
|
14
|
+
if @@data[f]
|
15
|
+
addr = dichotomizing(@@data[f],f == 0 ? ip : ip[4,ip.length])
|
16
|
+
return addr.strip if addr
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
return "UNKNOW"
|
21
|
+
end
|
22
|
+
|
23
|
+
protected
|
24
|
+
def self.dichotomizing(arg,ip)
|
25
|
+
cen = (arg.length/2).to_i
|
26
|
+
x = arg[cen].split(/\s+/,3)
|
27
|
+
|
28
|
+
return (x[0]..x[1]).include?(ip) ? x[2] : false if arg.size == 1
|
29
|
+
return dichotomizing(arg[0...cen],ip) if x[0] > ip
|
30
|
+
return dichotomizing(arg[cen...arg.length],ip) if x[1] < ip
|
31
|
+
return x[2]
|
32
|
+
end
|
33
|
+
|
34
|
+
def self.format(ip)
|
35
|
+
ip.to_s.split('.').inject([]) do |s,x|
|
36
|
+
s << [('%03s' % x).gsub(/ /,'0')]
|
37
|
+
end.join('.')
|
38
|
+
end
|
39
|
+
end
|
data/lib/version.rb
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__),"..","lib","ipparse.rb")
|
2
|
+
require 'test/unit'
|
3
|
+
|
4
|
+
class TestIPParse < Test::Unit::TestCase
|
5
|
+
def test_parse
|
6
|
+
assert_equal IPParse.parse('222.153.3'),false
|
7
|
+
assert_equal IPParse.parse('222.15.153.3'),"江西省云南市"
|
8
|
+
assert_equal IPParse.parse('24.38.192.2'),"美国"
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_format
|
12
|
+
assert_equal IPParse.format('12.3.4.23'),'012.003.004.023'
|
13
|
+
end
|
14
|
+
end
|