jpmobile 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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) }