ipscanner 0.1.11 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/lib/ipscanner.rb +37 -1
- metadata +2 -2
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d713f693bc8b3f67bf0a67a618850e820dc86808
|
4
|
+
data.tar.gz: 9d0dc0aa405369c49e4dceb3190e969a379fb7a2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3558cef728e379a456c974c3fd4bb0c91a4eb08dcaee2da1f9fda9e804ea722b9829cec26cbf7d03a48868cfb7ee94c1581205f23e8eda24db678f802311a0bd
|
7
|
+
data.tar.gz: 21d8549b262334903c11027779a4ceef46ef486cddb45fef562673455dbe6199ef565c223f5ce2e0f1a81e0304158d38213c819422e40bc4ac66e8de6d61b560
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/lib/ipscanner.rb
CHANGED
@@ -7,6 +7,42 @@ require 'timeout'
|
|
7
7
|
|
8
8
|
class IPScanner
|
9
9
|
|
10
|
+
def self.detect_new(ip_base='192.168.1.')
|
11
|
+
|
12
|
+
puts "scanning the network (#{ip_base}x)"
|
13
|
+
|
14
|
+
a1 = scan ip_base
|
15
|
+
puts "found %d IP addresses" % a1.length
|
16
|
+
k = :y
|
17
|
+
|
18
|
+
while k == :y do
|
19
|
+
|
20
|
+
print 'scan to detect new IP addresses? (y/n) '
|
21
|
+
k = gets.lstrip.chomp.to_sym
|
22
|
+
(puts 'enter y or n'; k = :y) if k != :y and k != :n
|
23
|
+
|
24
|
+
return if k == :n
|
25
|
+
|
26
|
+
a2 = scan ip_base
|
27
|
+
found = a2 - a1
|
28
|
+
|
29
|
+
if a2 == a1 then
|
30
|
+
puts 'no new IP addresses found'
|
31
|
+
else
|
32
|
+
if found.any? then
|
33
|
+
puts 'found : ' + found.inspect
|
34
|
+
else
|
35
|
+
puts "found %d IP addresses" % a1.length
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
a1 = a2
|
40
|
+
|
41
|
+
end
|
42
|
+
|
43
|
+
|
44
|
+
end
|
45
|
+
|
10
46
|
def self.scan(ip_base='192.168.1.', range=1..254, t=1)
|
11
47
|
a = []
|
12
48
|
(range).map{|i| Thread.new {a << i if pingecho(ip_base+i.to_s, t) }}.join
|
@@ -26,6 +62,6 @@ class IPScanner
|
|
26
62
|
return false
|
27
63
|
end
|
28
64
|
return true
|
29
|
-
end
|
65
|
+
end
|
30
66
|
|
31
67
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ipscanner
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Robertson
|
@@ -31,7 +31,7 @@ cert_chain:
|
|
31
31
|
3ZgxF1oanvKbXF7E/fLiX64X+j70muT9lcDYSjoUNRoqCoXZZLGhGyqFIRgAMfLC
|
32
32
|
vXXWpmgCmyeglA==
|
33
33
|
-----END CERTIFICATE-----
|
34
|
-
date: 2015-
|
34
|
+
date: 2015-09-11 00:00:00.000000000 Z
|
35
35
|
dependencies: []
|
36
36
|
description: Ping every address on a IPV4 Subnet e.g. 192.168.1.x
|
37
37
|
email: james@r0bertson.co.uk
|
metadata.gz.sig
CHANGED
Binary file
|