dumper 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/dumper.rb +3 -23
- data/lib/dumper/cli.rb +6 -6
- data/lib/dumper/utility.rb +39 -0
- data/lib/dumper/version.rb +1 -1
- metadata +3 -2
data/lib/dumper.rb
CHANGED
@@ -1,29 +1,9 @@
|
|
1
|
-
require 'dumper/version'
|
2
1
|
require 'thor'
|
3
2
|
require 'rainbow'
|
4
3
|
require 'socket'
|
5
4
|
|
6
5
|
module Dumper
|
7
|
-
autoload :Cli,
|
8
|
-
|
9
|
-
|
10
|
-
require 'ipaddr'
|
11
|
-
class IPAddr
|
12
|
-
PrivateRanges = [
|
13
|
-
IPAddr.new("10.0.0.0/8"),
|
14
|
-
IPAddr.new("172.16.0.0/12"),
|
15
|
-
IPAddr.new("192.168.0.0/16")
|
16
|
-
]
|
17
|
-
|
18
|
-
def private?
|
19
|
-
return false unless self.ipv4?
|
20
|
-
PrivateRanges.each do |ipr|
|
21
|
-
return true if ipr.include?(self)
|
22
|
-
end
|
23
|
-
return false
|
24
|
-
end
|
25
|
-
|
26
|
-
def public?
|
27
|
-
!private?
|
28
|
-
end
|
6
|
+
autoload :Cli, 'dumper/cli'
|
7
|
+
autoload :Utility, 'dumper/utility'
|
8
|
+
autoload :VERSION, 'dumper/version'
|
29
9
|
end
|
data/lib/dumper/cli.rb
CHANGED
@@ -11,14 +11,14 @@ module Dumper
|
|
11
11
|
no_tasks do
|
12
12
|
def check_ip
|
13
13
|
puts 'Checking IP address...'
|
14
|
-
ip =
|
15
|
-
|
16
|
-
if
|
17
|
-
|
14
|
+
@ip = Dumper::Utility::IP.new
|
15
|
+
str = "#{@ip.ip} ... "
|
16
|
+
if @ip.ipaddr.private?
|
17
|
+
str << 'private'.color(:red)
|
18
18
|
else
|
19
|
-
|
19
|
+
str << 'public'.color(:green)
|
20
20
|
end
|
21
|
-
puts
|
21
|
+
puts str
|
22
22
|
end
|
23
23
|
|
24
24
|
def check_cnf
|
@@ -0,0 +1,39 @@
|
|
1
|
+
require 'ipaddr'
|
2
|
+
|
3
|
+
module Dumper
|
4
|
+
module Utility
|
5
|
+
class IP
|
6
|
+
attr_reader :ip, :ipaddr
|
7
|
+
|
8
|
+
def initialize(*args)
|
9
|
+
disable_reverse_lookup do
|
10
|
+
UDPSocket.open do |s|
|
11
|
+
s.connect '64.233.187.99', 1
|
12
|
+
@ip = s.addr.last
|
13
|
+
end
|
14
|
+
end
|
15
|
+
@ipaddr = Dumper::Utility::IPAddr.new(@ip)
|
16
|
+
end
|
17
|
+
|
18
|
+
def disable_reverse_lookup
|
19
|
+
orig = Socket.do_not_reverse_lookup
|
20
|
+
Socket.do_not_reverse_lookup = true
|
21
|
+
begin
|
22
|
+
yield
|
23
|
+
ensure
|
24
|
+
Socket.do_not_reverse_lookup = orig
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
class IPAddr < ::IPAddr
|
30
|
+
def private?
|
31
|
+
return false unless self.ipv4?
|
32
|
+
|
33
|
+
[ IPAddr.new("10.0.0.0/8"),
|
34
|
+
IPAddr.new("172.16.0.0/12"),
|
35
|
+
IPAddr.new("192.168.0.0/16") ].any?{|i| i.include? self }
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
data/lib/dumper/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dumper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-04-
|
12
|
+
date: 2012-04-29 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: thor
|
@@ -60,6 +60,7 @@ files:
|
|
60
60
|
- dumper.gemspec
|
61
61
|
- lib/dumper.rb
|
62
62
|
- lib/dumper/cli.rb
|
63
|
+
- lib/dumper/utility.rb
|
63
64
|
- lib/dumper/version.rb
|
64
65
|
homepage: ''
|
65
66
|
licenses: []
|