jpmobile 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -4,3 +4,4 @@ pkg
4
4
  .bundle
5
5
  Gemfile
6
6
  Gemfile.lock
7
+ vendor
@@ -136,7 +136,7 @@ jpmobileを読み込むとDoCoMo、Au、SoftBankの絵文字を透過的に扱
136
136
  * Rails の場合は vendor/plugins に配置し、下記の設定を追加することで有効になる。
137
137
 
138
138
  # Rack middleware を追加するメソッド
139
- Rails.application.config.jpmobile.mobile_fiter
139
+ Rails.application.config.jpmobile.mobile_filter
140
140
 
141
141
  ** 下記の設定を追加することで、<form> タグの accept-charset が変更される。
142
142
 
data/Rakefile CHANGED
@@ -4,6 +4,7 @@ require 'rake/clean'
4
4
  require 'rake/testtask'
5
5
  require 'rake/rdoctask'
6
6
  require 'fileutils'
7
+ require 'pathname'
7
8
  include FileUtils
8
9
 
9
10
  begin
@@ -18,9 +19,8 @@ begin
18
19
 
19
20
  gem.test_files.exclude 'test/rails/rails_root'
20
21
 
21
- gem.add_development_dependency('rspec', '>=1.3.0')
22
- gem.add_development_dependency('rspec-rails', '>=1.3.2')
23
- gem.add_development_dependency('rspec-fixture', '>=0.0.2')
22
+ gem.add_development_dependency('rspec', '2.0.0.beta.17')
23
+ gem.add_development_dependency('rspec-rails', '2.0.0.beta.17')
24
24
  gem.add_development_dependency('jeweler', '>=1.4.0')
25
25
  end
26
26
  rescue LoadError
@@ -48,5 +48,25 @@ task :update do
48
48
  end
49
49
  end
50
50
 
51
- task :test => ['test:legacy', 'spec:unit', 'spec:rack', 'test:rails']
51
+ namespace :test do
52
+ desc "Preparation of external modules"
53
+ task :prepare do
54
+ external_repos = [
55
+ "jpmobile-ipaddresses"
56
+ ]
57
+ github_prefix = "git://github.com/jpmobile"
58
+ vendor_path = Pathname.new(Dir.pwd).join("vendor")
59
+ FileUtils.mkdir_p(vendor_path)
60
+
61
+ FileUtils.cd(vendor_path) do
62
+ external_repos.each do |repos|
63
+ unless File.directory?("#{repos}/.git")
64
+ Git.clone("#{github_prefix}/#{repos}.git", repos, {:path => vendor_path})
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end
70
+
71
+ task :test => ['test:prepare', 'test:legacy', 'spec:unit', 'spec:rack', 'test:rails']
52
72
  load 'lib/tasks/jpmobile_tasks.rake'
@@ -1,4 +1,5 @@
1
- ---
2
- :major: 0
1
+ ---
3
2
  :minor: 1
4
- :patch: 0
3
+ :patch: 1
4
+ :major: 0
5
+ :build:
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{jpmobile}
8
- s.version = "0.1.0"
8
+ s.version = "0.1.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Yoji Shidara", "Shin-ichiro OGAWA"]
12
- s.date = %q{2010-08-31}
12
+ s.date = %q{2010-09-06}
13
13
  s.description = %q{A Rails plugin for Japanese mobile-phones}
14
14
  s.email = %q{dara@shidara.net}
15
15
  s.extra_rdoc_files = [
@@ -56,11 +56,6 @@ Gem::Specification.new do |s|
56
56
  "lib/jpmobile/mobile/willcom.rb",
57
57
  "lib/jpmobile/mobile/windows_phone.rb",
58
58
  "lib/jpmobile/mobile/z_display_info_docomo.rb",
59
- "lib/jpmobile/mobile/z_ip_addresses_au.rb",
60
- "lib/jpmobile/mobile/z_ip_addresses_docomo.rb",
61
- "lib/jpmobile/mobile/z_ip_addresses_emobile.rb",
62
- "lib/jpmobile/mobile/z_ip_addresses_softbank.rb",
63
- "lib/jpmobile/mobile/z_ip_addresses_willcom.rb",
64
59
  "lib/jpmobile/position.rb",
65
60
  "lib/jpmobile/rack.rb",
66
61
  "lib/jpmobile/rack/filter.rb",
@@ -232,20 +227,17 @@ Gem::Specification.new do |s|
232
227
  s.specification_version = 3
233
228
 
234
229
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
235
- s.add_development_dependency(%q<rspec>, [">= 1.3.0"])
236
- s.add_development_dependency(%q<rspec-rails>, [">= 1.3.2"])
237
- s.add_development_dependency(%q<rspec-fixture>, [">= 0.0.2"])
230
+ s.add_development_dependency(%q<rspec>, ["= 2.0.0.beta.17"])
231
+ s.add_development_dependency(%q<rspec-rails>, ["= 2.0.0.beta.17"])
238
232
  s.add_development_dependency(%q<jeweler>, [">= 1.4.0"])
239
233
  else
240
- s.add_dependency(%q<rspec>, [">= 1.3.0"])
241
- s.add_dependency(%q<rspec-rails>, [">= 1.3.2"])
242
- s.add_dependency(%q<rspec-fixture>, [">= 0.0.2"])
234
+ s.add_dependency(%q<rspec>, ["= 2.0.0.beta.17"])
235
+ s.add_dependency(%q<rspec-rails>, ["= 2.0.0.beta.17"])
243
236
  s.add_dependency(%q<jeweler>, [">= 1.4.0"])
244
237
  end
245
238
  else
246
- s.add_dependency(%q<rspec>, [">= 1.3.0"])
247
- s.add_dependency(%q<rspec-rails>, [">= 1.3.2"])
248
- s.add_dependency(%q<rspec-fixture>, [">= 0.0.2"])
239
+ s.add_dependency(%q<rspec>, ["= 2.0.0.beta.17"])
240
+ s.add_dependency(%q<rspec-rails>, ["= 2.0.0.beta.17"])
249
241
  s.add_dependency(%q<jeweler>, [">= 1.4.0"])
250
242
  end
251
243
  end
@@ -28,14 +28,10 @@ module Jpmobile::Mobile
28
28
  # そうでなければ +false+ を返す。
29
29
  # IP空間が定義されていない場合は +nil+ を返す。
30
30
  def self.valid_ip? remote_addr
31
- addrs = nil
32
- begin
33
- addrs = self::IP_ADDRESSES
34
- rescue NameError => e
35
- return nil
36
- end
37
- remote = IPAddr.new(remote_addr)
38
- addrs.any? {|ip| ip.include? remote }
31
+ @ip_list ||= ip_address_class
32
+ return false unless @ip_list
33
+
34
+ @ip_list.valid_ip?(remote_addr)
39
35
  end
40
36
 
41
37
  def valid_ip?
@@ -92,5 +88,10 @@ module Jpmobile::Mobile
92
88
  @request.params
93
89
  end
94
90
  end
91
+
92
+ #
93
+ def self.ip_address_class
94
+ eval("::Jpmobile::Mobile::IpAddresses::#{self.to_s.split(/::/).last}").new rescue nil
95
+ end
95
96
  end
96
97
  end
@@ -57,6 +57,17 @@ namespace :test do
57
57
  FileUtils.cp_r(file, plugin_path)
58
58
  end
59
59
 
60
+ # setup jpmobile-ipaddresses
61
+ begin
62
+ plugin_path = File.join(rails_root, 'vendor', 'plugins', 'jpmobile-ipaddresses')
63
+ FileUtils.mkdir_p(plugin_path)
64
+ FileList["vendor/jpmobile-ipaddresses/*"].exclude("test").each do |file|
65
+ FileUtils.cp_r(file, plugin_path)
66
+ end
67
+ rescue LoadError
68
+ puts "IP Address test requires jpmobile-ipaddresses module"
69
+ end
70
+
60
71
  # setup tests
61
72
  FileList["test/rails/overrides/*"].each do |file|
62
73
  FileUtils.cp_r(file, rails_root)
@@ -70,7 +70,7 @@ describe Jpmobile::Rack::MobileCarrier, "softbank" do
70
70
  res = Rack::MockRequest.env_for(
71
71
  'http://jpmobile-rails.org/',
72
72
  'HTTP_USER_AGENT' => "Vodafone/1.0/V903T/TJ001 Browser/VF-Browser/1.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 Ext-J-Profile/JSCL-1.2.2 Ext-V-Profile/VSCL-2.0.0",
73
- "REMOTE_ADDR"=>"202.179.204.1")
73
+ "REMOTE_ADDR"=>"210.175.1.130")
74
74
  env = Jpmobile::Rack::MobileCarrier.new(UnitApplication.new).call(res)[1]
75
75
 
76
76
  env['rack.jpmobile'].valid_ip?.should be_true
@@ -5,6 +5,11 @@ require 'rspec'
5
5
  require 'jpmobile'
6
6
  require 'jpmobile/rack'
7
7
  require 'pp' # for debug
8
+ begin
9
+ require File.dirname(__FILE__)+'/../vendor/jpmobile-ipaddresses/lib/jpmobile-ipaddresses'
10
+ rescue LoadError
11
+ puts "IP Address test requires jpmobile-ipaddresses module"
12
+ end
8
13
 
9
14
  RSpec.configure do |config|
10
15
  config.include Rack::Test::Methods
@@ -8,6 +8,11 @@ unless RSpec.const_defined?(:Rails)
8
8
  require 'action_mailer'
9
9
  require 'initializer'
10
10
  require dir+'/../lib/jpmobile'
11
+ # begin
12
+ require dir+'/../vendor/jpmobile-ipaddresses/lib/jpmobile-ipaddresses'
13
+ # rescue LoadError
14
+ # puts "IP Address test requires jpmobile-ipaddresses module"
15
+ # end
11
16
 
12
17
  # set (dummy) RAILS_ROOT
13
18
  RAILS_ROOT=dir+"/.."
@@ -2,3 +2,8 @@ require 'rubygems'
2
2
  require 'rspec'
3
3
  $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'lib')))
4
4
  require 'jpmobile'
5
+ begin
6
+ require File.dirname(__FILE__)+'/../../vendor/jpmobile-ipaddresses/lib/jpmobile-ipaddresses'
7
+ rescue LoadError
8
+ puts "[NOTICE] IP Address test requires jpmobile-ipaddresses module"
9
+ end
@@ -6,10 +6,10 @@ describe 'Jpmobile::Mobile::valid_ip?' do
6
6
  [ '210.153.84.254' , :Docomo ],
7
7
  [ '210.230.128.225' , :Au ],
8
8
  [ '210.230.128.238' , :Au ],
9
- [ '123.108.236.1' , :Softbank ],
10
- [ '123.108.236.254' , :Softbank ],
11
- [ '123.108.236.1' , :Vodafone ],
12
- [ '123.108.236.254' , :Vodafone ],
9
+ [ '123.108.237.1' , :Softbank ],
10
+ [ '123.108.237.31' , :Softbank ],
11
+ [ '123.108.237.1' , :Vodafone ],
12
+ [ '123.108.237.31' , :Vodafone ],
13
13
  [ '61.198.142.1' , :Willcom ],
14
14
  [ '61.198.142.254' , :Willcom ],
15
15
  [ '61.198.142.1' , :Ddipocket ],
@@ -7,42 +7,9 @@ module Jpmobile
7
7
  end
8
8
 
9
9
  class TestAutoLoad < Test::Unit::TestCase
10
- def test_ip_addresses_docomo
11
- require 'jpmobile/mobile/docomo'
12
- assert_nothing_raised { Jpmobile::Mobile::Docomo::IP_ADDRESSES }
13
- assert_kind_of(Array, Jpmobile::Mobile::Docomo::IP_ADDRESSES)
14
- end
15
-
16
10
  def test_display_info_docomo
17
11
  require 'jpmobile/mobile/docomo'
18
12
  assert_nothing_raised { Jpmobile::Mobile::Docomo::DISPLAY_INFO }
19
13
  assert_kind_of(Hash, Jpmobile::Mobile::Docomo::DISPLAY_INFO)
20
14
  end
21
-
22
- def test_ip_addresses_au
23
- require 'jpmobile/mobile/au'
24
- assert_nothing_raised { Jpmobile::Mobile::Au::IP_ADDRESSES }
25
- assert_kind_of(Array, Jpmobile::Mobile::Au::IP_ADDRESSES)
26
- end
27
-
28
- def test_ip_addresses_softbank
29
- require 'jpmobile/mobile/softbank'
30
- assert_nothing_raised { Jpmobile::Mobile::Softbank::IP_ADDRESSES }
31
- assert_nothing_raised { Jpmobile::Mobile::Vodafone::IP_ADDRESSES }
32
- assert_kind_of(Array, Jpmobile::Mobile::Softbank::IP_ADDRESSES)
33
- assert_kind_of(Array, Jpmobile::Mobile::Vodafone::IP_ADDRESSES)
34
- end
35
-
36
- def test_ip_addresses_willcom
37
- require 'jpmobile/mobile/willcom'
38
- assert_nothing_raised { Jpmobile::Mobile::Willcom::IP_ADDRESSES }
39
- assert_kind_of(Array, Jpmobile::Mobile::Willcom::IP_ADDRESSES)
40
- end
41
-
42
- def test_ip_addresses_emobile
43
- require 'jpmobile/mobile/emobile'
44
- assert_nothing_raised { Jpmobile::Mobile::Emobile::IP_ADDRESSES }
45
- assert_kind_of(Array, Jpmobile::Mobile::Emobile::IP_ADDRESSES)
46
- end
47
-
48
15
  end
metadata CHANGED
@@ -1,12 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jpmobile
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 25
4
5
  prerelease: false
5
6
  segments:
6
7
  - 0
7
8
  - 1
8
- - 0
9
- version: 0.1.0
9
+ - 1
10
+ version: 0.1.1
10
11
  platform: ruby
11
12
  authors:
12
13
  - Yoji Shidara
@@ -15,7 +16,7 @@ autorequire:
15
16
  bindir: bin
16
17
  cert_chain: []
17
18
 
18
- date: 2010-08-31 00:00:00 +09:00
19
+ date: 2010-09-06 00:00:00 +09:00
19
20
  default_executable:
20
21
  dependencies:
21
22
  - !ruby/object:Gem::Dependency
@@ -24,13 +25,16 @@ dependencies:
24
25
  requirement: &id001 !ruby/object:Gem::Requirement
25
26
  none: false
26
27
  requirements:
27
- - - ">="
28
+ - - "="
28
29
  - !ruby/object:Gem::Version
30
+ hash: 62196417
29
31
  segments:
30
- - 1
31
- - 3
32
+ - 2
33
+ - 0
32
34
  - 0
33
- version: 1.3.0
35
+ - beta
36
+ - 17
37
+ version: 2.0.0.beta.17
34
38
  type: :development
35
39
  version_requirements: *id001
36
40
  - !ruby/object:Gem::Dependency
@@ -39,45 +43,34 @@ dependencies:
39
43
  requirement: &id002 !ruby/object:Gem::Requirement
40
44
  none: false
41
45
  requirements:
42
- - - ">="
46
+ - - "="
43
47
  - !ruby/object:Gem::Version
48
+ hash: 62196417
44
49
  segments:
45
- - 1
46
- - 3
47
50
  - 2
48
- version: 1.3.2
49
- type: :development
50
- version_requirements: *id002
51
- - !ruby/object:Gem::Dependency
52
- name: rspec-fixture
53
- prerelease: false
54
- requirement: &id003 !ruby/object:Gem::Requirement
55
- none: false
56
- requirements:
57
- - - ">="
58
- - !ruby/object:Gem::Version
59
- segments:
60
51
  - 0
61
52
  - 0
62
- - 2
63
- version: 0.0.2
53
+ - beta
54
+ - 17
55
+ version: 2.0.0.beta.17
64
56
  type: :development
65
- version_requirements: *id003
57
+ version_requirements: *id002
66
58
  - !ruby/object:Gem::Dependency
67
59
  name: jeweler
68
60
  prerelease: false
69
- requirement: &id004 !ruby/object:Gem::Requirement
61
+ requirement: &id003 !ruby/object:Gem::Requirement
70
62
  none: false
71
63
  requirements:
72
64
  - - ">="
73
65
  - !ruby/object:Gem::Version
66
+ hash: 7
74
67
  segments:
75
68
  - 1
76
69
  - 4
77
70
  - 0
78
71
  version: 1.4.0
79
72
  type: :development
80
- version_requirements: *id004
73
+ version_requirements: *id003
81
74
  description: A Rails plugin for Japanese mobile-phones
82
75
  email: dara@shidara.net
83
76
  executables: []
@@ -127,11 +120,6 @@ files:
127
120
  - lib/jpmobile/mobile/willcom.rb
128
121
  - lib/jpmobile/mobile/windows_phone.rb
129
122
  - lib/jpmobile/mobile/z_display_info_docomo.rb
130
- - lib/jpmobile/mobile/z_ip_addresses_au.rb
131
- - lib/jpmobile/mobile/z_ip_addresses_docomo.rb
132
- - lib/jpmobile/mobile/z_ip_addresses_emobile.rb
133
- - lib/jpmobile/mobile/z_ip_addresses_softbank.rb
134
- - lib/jpmobile/mobile/z_ip_addresses_willcom.rb
135
123
  - lib/jpmobile/position.rb
136
124
  - lib/jpmobile/rack.rb
137
125
  - lib/jpmobile/rack/filter.rb
@@ -248,6 +236,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
248
236
  requirements:
249
237
  - - ">="
250
238
  - !ruby/object:Gem::Version
239
+ hash: 3
251
240
  segments:
252
241
  - 0
253
242
  version: "0"
@@ -256,6 +245,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
256
245
  requirements:
257
246
  - - ">="
258
247
  - !ruby/object:Gem::Version
248
+ hash: 3
259
249
  segments:
260
250
  - 0
261
251
  version: "0"
@@ -1,27 +0,0 @@
1
- Jpmobile::Mobile::Au::IP_ADDRESSES =
2
- ["210.230.128.224/28",
3
- "121.111.227.160/27",
4
- "61.117.1.0/28",
5
- "219.108.158.0/27",
6
- "219.125.146.0/28",
7
- "61.117.2.32/29",
8
- "61.117.2.40/29",
9
- "219.108.158.40/29",
10
- "219.125.148.0/25",
11
- "222.5.63.0/25",
12
- "222.5.63.128/25",
13
- "222.5.62.128/25",
14
- "59.135.38.128/25",
15
- "219.108.157.0/25",
16
- "219.125.145.0/25",
17
- "121.111.231.0/25",
18
- "121.111.227.0/25",
19
- "118.152.214.192/26",
20
- "118.159.131.0/25",
21
- "118.159.133.0/25",
22
- "118.159.132.160/27",
23
- "111.86.142.0/26",
24
- "111.86.141.64/26",
25
- "111.86.141.128/26",
26
- "111.86.141.192/26",
27
- "118.159.133.192/26"].map {|ip| IPAddr.new(ip) }
@@ -1,15 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # = IPアドレス帯域テーブル(手動更新分)
3
- # == DoCoMo
4
- # http://www.nttdocomo.co.jp/service/imode/make/content/ip/index.html
5
- # 2008/09現在
6
- Jpmobile::Mobile::Docomo::IP_ADDRESSES = %w(
7
- 210.153.84.0/24
8
- 210.136.161.0/24
9
- 210.153.86.0/24
10
- 124.146.174.0/24
11
- 124.146.175.0/24
12
- 202.229.176.0/24
13
- 202.229.177.0/24
14
- 202.229.178.0/24
15
- ).map {|ip| IPAddr.new(ip) }
@@ -1,10 +0,0 @@
1
- # = IPアドレス帯域テーブル(手動更新分)
2
- # == EMOBILE
3
- # http://developer.emnet.ne.jp/ipaddress.html
4
- # 2008/02/26現在
5
-
6
- #:enddoc:
7
-
8
- Jpmobile::Mobile::Emobile::IP_ADDRESSES = %w(
9
- 117.55.1.224/27
10
- ).map {|ip| IPAddr.new(ip) }
@@ -1,17 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # = IPアドレス帯域テーブル(手動更新分)
3
- # == SoftBank
4
- # http://developers.softbankmobile.co.jp/dp/tech_svc/web/ip.php
5
- # 2007/10/09現在
6
- Jpmobile::Mobile::Softbank::IP_ADDRESSES = %w(
7
- 123.108.236.0/24
8
- 123.108.237.0/27
9
- 202.179.204.0/24
10
- 202.253.96.224/27
11
- 210.146.7.192/26
12
- 210.146.60.192/26
13
- 210.151.9.128/26
14
- 210.175.1.128/25
15
- 211.8.159.128/25
16
- 210.175.1.128/25
17
- ).map {|ip| IPAddr.new(ip) }
@@ -1,157 +0,0 @@
1
- Jpmobile::Mobile::Willcom::IP_ADDRESSES =
2
- ["61.198.128.0/24",
3
- "61.198.129.0/24",
4
- "61.198.130.0/24",
5
- "61.198.131.0/24",
6
- "61.198.132.0/24",
7
- "61.198.133.0/24",
8
- "61.198.134.0/24",
9
- "61.198.135.0/24",
10
- "61.198.136.0/24",
11
- "61.198.137.0/24",
12
- "61.198.138.100/32",
13
- "61.198.138.101/32",
14
- "61.198.138.102/32",
15
- "61.198.138.103/32",
16
- "61.198.139.0/29",
17
- "61.198.139.128/27",
18
- "61.198.139.160/28",
19
- "61.198.140.0/24",
20
- "61.198.141.0/24",
21
- "61.198.142.0/24",
22
- "61.198.143.0/24",
23
- "61.198.160.0/24",
24
- "61.198.161.0/24",
25
- "61.198.162.0/24",
26
- "61.198.163.0/24",
27
- "61.198.164.0/24",
28
- "61.198.165.0/24",
29
- "61.198.166.0/24",
30
- "61.198.168.0/24",
31
- "61.198.169.0/24",
32
- "61.198.170.0/24",
33
- "61.198.171.0/24",
34
- "61.198.172.0/24",
35
- "61.198.173.0/24",
36
- "61.198.174.0/24",
37
- "61.198.175.0/24",
38
- "61.198.248.0/24",
39
- "61.198.249.0/24",
40
- "61.198.250.0/24",
41
- "61.198.251.0/24",
42
- "61.198.252.0/24",
43
- "61.198.253.0/24",
44
- "61.198.254.0/24",
45
- "61.198.255.0/24",
46
- "61.204.0.0/24",
47
- "61.204.2.0/24",
48
- "61.204.3.0/25",
49
- "61.204.3.128/25",
50
- "61.204.4.0/24",
51
- "61.204.5.0/24",
52
- "61.204.6.0/25",
53
- "61.204.6.128/25",
54
- "61.204.7.0/25",
55
- "61.204.92.0/24",
56
- "61.204.93.0/24",
57
- "61.204.94.0/24",
58
- "61.204.95.0/24",
59
- "114.20.49.0/24",
60
- "114.20.50.0/24",
61
- "114.20.51.0/24",
62
- "114.20.52.0/24",
63
- "114.20.53.0/24",
64
- "114.20.54.0/24",
65
- "114.20.55.0/24",
66
- "114.20.56.0/24",
67
- "114.20.57.0/24",
68
- "114.20.58.0/24",
69
- "114.20.59.0/24",
70
- "114.20.60.0/24",
71
- "114.20.61.0/24",
72
- "114.20.62.0/24",
73
- "114.20.63.0/24",
74
- "114.20.64.0/24",
75
- "114.20.65.0/24",
76
- "114.20.66.0/24",
77
- "114.20.67.0/24",
78
- "114.21.255.0/27",
79
- "125.28.0.0/24",
80
- "125.28.1.0/24",
81
- "125.28.15.0/24",
82
- "125.28.16.0/24",
83
- "125.28.17.0/24",
84
- "125.28.2.0/24",
85
- "125.28.3.0/24",
86
- "125.28.4.0/24",
87
- "125.28.5.0/24",
88
- "125.28.8.0/24",
89
- "210.168.246.0/24",
90
- "210.168.247.0/24",
91
- "210.169.92.0/24",
92
- "210.169.93.0/24",
93
- "210.169.94.0/24",
94
- "210.169.95.0/24",
95
- "210.169.96.0/24",
96
- "210.169.97.0/24",
97
- "210.169.98.0/24",
98
- "210.169.99.0/24",
99
- "211.126.192.128/25",
100
- "211.18.232.0/24",
101
- "211.18.233.0/24",
102
- "211.18.234.0/24",
103
- "211.18.235.0/24",
104
- "211.18.236.0/24",
105
- "211.18.237.0/24",
106
- "219.108.10.0/24",
107
- "219.108.11.0/24",
108
- "219.108.12.0/24",
109
- "219.108.13.0/24",
110
- "219.108.14.0/24",
111
- "219.108.15.0/24",
112
- "219.108.7.0/24",
113
- "219.108.8.0/24",
114
- "219.108.9.0/24",
115
- "221.119.0.0/24",
116
- "221.119.1.0/24",
117
- "221.119.2.0/24",
118
- "221.119.3.0/24",
119
- "221.119.4.0/24",
120
- "221.119.6.0/24",
121
- "221.119.7.0/24",
122
- "221.119.8.0/24",
123
- "221.119.9.0/24",
124
- "114.20.49.0/24",
125
- "114.20.50.0/24",
126
- "114.20.51.0/24",
127
- "114.20.52.0/24",
128
- "114.20.53.0/24",
129
- "114.20.54.0/24",
130
- "114.20.55.0/24",
131
- "114.20.56.0/24",
132
- "114.20.57.0/24",
133
- "114.20.58.0/24",
134
- "114.20.59.0/24",
135
- "114.20.60.0/24",
136
- "114.20.61.0/24",
137
- "114.20.62.0/24",
138
- "114.20.63.0/24",
139
- "114.20.64.0/24",
140
- "114.20.65.0/24",
141
- "114.20.66.0/24",
142
- "114.20.67.0/24",
143
- "114.21.255.0/27",
144
- "219.108.2.0/24",
145
- "219.108.3.0/24",
146
- "125.28.6.0/24",
147
- "125.28.7.0/24",
148
- "125.28.11.0/24",
149
- "125.28.12.0/24",
150
- "125.28.13.0/24",
151
- "125.28.14.0/24",
152
- "211.18.238.0/24",
153
- "211.18.239.0/24",
154
- "219.108.4.0/24",
155
- "219.108.5.0/24",
156
- "219.108.6.0/24",
157
- "221.119.5.0/24"].map {|ip| IPAddr.new(ip) }