subnetica 1.0.2 → 1.0.4

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/subnetica.rb +14 -2
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ee3a82a5af90c42c3ac1151967b5d7f989160d278a95c336fda10d0f831767cf
4
- data.tar.gz: 20cad993e7f4890f097b3fea155c211ed9f6b01c9145b450e8485703e9ed8db0
3
+ metadata.gz: f1091fd607ca13713d464b44a8b2eb88fef5c67998356710122e6839024578a8
4
+ data.tar.gz: 28df63d0f0d6364364c0633df09f7582ed912be8dd52b5ab71348942fa2b5d46
5
5
  SHA512:
6
- metadata.gz: 69cde7ab7305ed557f1bc98b432f9f7c5820bfda297a5234b2f800e6c09999cdc51c783267e41f43544737096df7180d506609946bd6286b7bff858d1cf287bd
7
- data.tar.gz: 2ce303250b531440a69d1a16c74ac905dceda50ef02659a453e3b8140cfd89e8f1c4dd4e0f88d394d12ed8eb09d02ba378c5cef7b8b19e725eed525f04600a16
6
+ metadata.gz: 791f6dcde649bd4a939747b74d6d080d4095da322c4109a9e9d385c1f3bb22aa9d9e8cf68e04718fab11b8f887dc6e05c4afaeb92d876563e8913798e8fd261f
7
+ data.tar.gz: 1035c3e439b639339062b4ba07a1df52398db3296cd14d2d22adf352a2d720921dfa82fb51ab46958578a7a117333be63c48247c269cfafbb8b814abf4440a7b
data/lib/subnetica.rb CHANGED
@@ -30,7 +30,7 @@ module Subnetica
30
30
  [IPAddr.new('::1/128'), 'Loopback address'],
31
31
  [IPAddr.new('::ffff:0:0/96'), 'IPv4-mapped addresses'],
32
32
  [IPAddr.new('::ffff:0:0:0/96'), 'IPv4 translated addresses'],
33
- [IPAddr.new('64:ff9b::/96'), 'IPv4/IPv6 translation (RFC6052)'],
33
+ [IPAddr.new('64:ff9b::/96'), 'IPv4/IPv6 translation (RFC6052, NAT64)'],
34
34
  [IPAddr.new('64:ff9b:1::/48'), 'IPv4/IPv6 translation (RFC8215)'],
35
35
  [IPAddr.new('100::/64'), 'Discard prefix (RFC6666)'],
36
36
  [IPAddr.new('2000::/3'), 'Global Unicast Address (GUA)'],
@@ -71,7 +71,10 @@ module Subnetica
71
71
  [IPAddr.new('ff02::1:1/128'), 'Link name'],
72
72
  [IPAddr.new('ff02::1:2/128'), 'All-dhcp-agents (DHCPv6) in the link-local'],
73
73
  [IPAddr.new('ff02::1:3/128'), 'Link-local multicast name resolution'],
74
- [IPAddr.new('ff05::1:3/128'), 'All-dhcp-agents (DHCPv6) in the site-local']
74
+ [IPAddr.new('ff05::1:3/128'), 'All-dhcp-agents (DHCPv6) in the site-local'],
75
+
76
+ [IPAddr.new('ff02::114'), 'Yggdrasil Multicast Discovery'],
77
+ [IPAddr.new('ff12::8384'), 'Syncthing Local Discovery Protocol']
75
78
  ].freeze
76
79
 
77
80
  def self.getinfo ipaddr
@@ -92,6 +95,15 @@ module Subnetica
92
95
  end
93
96
 
94
97
  attributes['IPv4-mapped IPv6'] = "::ffff:#{ipaddr}"
98
+
99
+ [32, 27, 24, 16].each do |mask|
100
+ bits = mask - ipaddr.prefix
101
+ if bits.positive?
102
+ num_prefix = 2**bits
103
+ calc_res = " = #{num_prefix}" if num_prefix <= 65_536
104
+ attributes["/#{mask}s"] = "2^#{bits}#{calc_res}"
105
+ end
106
+ end
95
107
  elsif ipaddr.ipv6?
96
108
  flags << 'IPv6'
97
109
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: subnetica
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marek Küthe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-04-20 00:00:00.000000000 Z
11
+ date: 2023-05-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: meshname