Added: Private IP - #346

Open
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop
Open

Added: Private IP#346
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop

Conversation

@al26p

Copy link
Copy Markdown

Hi !

A quick approach to retrieve local IP from ip route using GLib.

Should answers to #254

* Added: Private IP
* Fix typo and reserved
@corecoding

Copy link
Copy Markdown
Owner

I appreciate this PR. Is there a way to pull this data from a file in /proc or /sys? Shelling to disk will cause lag in the system (such as when scrolling bodies of text, etc). A group of individuals is working on Nvidia GPU support which shells to disk (only way). If shelling is the only way, we'll likely have to combine this code into a separate branch with the Nvidia code and add an alert that tells the user to expect lags - otherwise I'll get a flood of bug reports about lagging

@CheariX

CheariX commented Jul 14, 2023

Copy link
Copy Markdown

You can find the IPs of current NICs in /proc/net/fib_trie.
Parsing might be a little tricky, searching for something like "/32 host LOCAL" should do the trick for IPv4.

@ispanos

Copy link
Copy Markdown

Hello,

Right now I am using gnome-extension-lan-ip-address to 'pin' my local IP. On the one hand I like that there is no icon next to it, but on the other, I would rather have it included in vitals. (Thank you for this extension btw.) The other extension uses ip route get 1.1.1.1 to see which ip is used to access the internet.

This comment suggests an easy way to parse /proc/net/fib_trie. I have written the function to do it and I would like to make my first contribution to a Gnome extension. I would like to have your thoughts on a problem I'm having. In the case where there are multiple IP addresses due to being connected to a VPN client or are using both WIFI and ethernet, how could we differentiate the IPs?

Example: (If you see at the bottom of the comment, I have pasted my fib_trie with and without a VPN connection.)

When I am on my laptop, 99% of the time I have the 192.168.1.118 address, and that's what I want to be displayed on the top panel. However, when I connect to a VPN, I want that address to change to the one the VPN gives me (or cycle them).

We could display all of them in the drop down menu, but what about pinning? We can't pin all of them because it would take up too much space. Do we pin "LAN Address" and cycle through them (except '127.0.0.1') every few seconds? I fear it would bring in bug reports from people thinking that their IP changes every "X" seconds. Can we disable pinning "LAN Address"? Pinning one of them would be weird, because the whole point of pinning your ip adress is to see which one is active.

I think a hybrid solution would be best. Use the same implementation as lan-ip-address as an opt-in metric, "Active LAN IP". It won't add unnecessary pings when it's disabled, yet it would integrate one more data point and a whole extra extension for users. On top of that, add a "LAN Address" list created from /proc/net/fib_trie and either disable pinning or cycle through them every few seconds. Not many people use VPNs or multiple NIC's, so for most of the user-base this implementation will be all they need.

I wish someone comes up with a better idea.

Without VPN

Local:
+-- 0.0.0.0/0 3 0 5
|-- 0.0.0.0
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 192.168.1.0/24 2 0 1
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST

With VPN

Local:
+-- 0.0.0.0/0 3 0 4
|-- 0.0.0.0
/0 universe UNICAST
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 172.39.0.0/18 2 0 2
|-- 172.39.0.1
/32 universe UNICAST
+-- 172.39.47.92/30 2 0 2
|-- 172.39.47.93
/32 link UNICAST
|-- 172.39.47.94
/32 host LOCAL
+-- 192.0.0.0/6 2 0 2
+-- 192.168.1.0/24 2 0 1
+-- 192.168.1.0/31 1 0 0
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.1
/32 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST
|-- 195.251.255.75
/32 universe UNICAST

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@al26p@corecoding@CheariX@ispanos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Added: Private IP - #346

Open
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop
Open

Added: Private IP#346
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop

Conversation

@al26p

Copy link
Copy Markdown

Hi !

A quick approach to retrieve local IP from ip route using GLib.

Should answers to #254

* Added: Private IP
* Fix typo and reserved
@corecoding

Copy link
Copy Markdown
Owner

I appreciate this PR. Is there a way to pull this data from a file in /proc or /sys? Shelling to disk will cause lag in the system (such as when scrolling bodies of text, etc). A group of individuals is working on Nvidia GPU support which shells to disk (only way). If shelling is the only way, we'll likely have to combine this code into a separate branch with the Nvidia code and add an alert that tells the user to expect lags - otherwise I'll get a flood of bug reports about lagging

@CheariX

CheariX commented Jul 14, 2023

Copy link
Copy Markdown

You can find the IPs of current NICs in /proc/net/fib_trie.
Parsing might be a little tricky, searching for something like "/32 host LOCAL" should do the trick for IPv4.

@ispanos

Copy link
Copy Markdown

Hello,

Right now I am using gnome-extension-lan-ip-address to 'pin' my local IP. On the one hand I like that there is no icon next to it, but on the other, I would rather have it included in vitals. (Thank you for this extension btw.) The other extension uses ip route get 1.1.1.1 to see which ip is used to access the internet.

This comment suggests an easy way to parse /proc/net/fib_trie. I have written the function to do it and I would like to make my first contribution to a Gnome extension. I would like to have your thoughts on a problem I'm having. In the case where there are multiple IP addresses due to being connected to a VPN client or are using both WIFI and ethernet, how could we differentiate the IPs?

Example: (If you see at the bottom of the comment, I have pasted my fib_trie with and without a VPN connection.)

When I am on my laptop, 99% of the time I have the 192.168.1.118 address, and that's what I want to be displayed on the top panel. However, when I connect to a VPN, I want that address to change to the one the VPN gives me (or cycle them).

We could display all of them in the drop down menu, but what about pinning? We can't pin all of them because it would take up too much space. Do we pin "LAN Address" and cycle through them (except '127.0.0.1') every few seconds? I fear it would bring in bug reports from people thinking that their IP changes every "X" seconds. Can we disable pinning "LAN Address"? Pinning one of them would be weird, because the whole point of pinning your ip adress is to see which one is active.

I think a hybrid solution would be best. Use the same implementation as lan-ip-address as an opt-in metric, "Active LAN IP". It won't add unnecessary pings when it's disabled, yet it would integrate one more data point and a whole extra extension for users. On top of that, add a "LAN Address" list created from /proc/net/fib_trie and either disable pinning or cycle through them every few seconds. Not many people use VPNs or multiple NIC's, so for most of the user-base this implementation will be all they need.

I wish someone comes up with a better idea.

Without VPN

Local:
+-- 0.0.0.0/0 3 0 5
|-- 0.0.0.0
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 192.168.1.0/24 2 0 1
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST

With VPN

Local:
+-- 0.0.0.0/0 3 0 4
|-- 0.0.0.0
/0 universe UNICAST
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 172.39.0.0/18 2 0 2
|-- 172.39.0.1
/32 universe UNICAST
+-- 172.39.47.92/30 2 0 2
|-- 172.39.47.93
/32 link UNICAST
|-- 172.39.47.94
/32 host LOCAL
+-- 192.0.0.0/6 2 0 2
+-- 192.168.1.0/24 2 0 1
+-- 192.168.1.0/31 1 0 0
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.1
/32 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST
|-- 195.251.255.75
/32 universe UNICAST

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@al26p@corecoding@CheariX@ispanos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Added: Private IP - #346

Open
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop
Open

Added: Private IP#346
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop

Conversation

@al26p

Copy link
Copy Markdown

Hi !

A quick approach to retrieve local IP from ip route using GLib.

Should answers to #254

* Added: Private IP
* Fix typo and reserved
@corecoding

Copy link
Copy Markdown
Owner

I appreciate this PR. Is there a way to pull this data from a file in /proc or /sys? Shelling to disk will cause lag in the system (such as when scrolling bodies of text, etc). A group of individuals is working on Nvidia GPU support which shells to disk (only way). If shelling is the only way, we'll likely have to combine this code into a separate branch with the Nvidia code and add an alert that tells the user to expect lags - otherwise I'll get a flood of bug reports about lagging

@CheariX

CheariX commented Jul 14, 2023

Copy link
Copy Markdown

You can find the IPs of current NICs in /proc/net/fib_trie.
Parsing might be a little tricky, searching for something like "/32 host LOCAL" should do the trick for IPv4.

@ispanos

Copy link
Copy Markdown

Hello,

Right now I am using gnome-extension-lan-ip-address to 'pin' my local IP. On the one hand I like that there is no icon next to it, but on the other, I would rather have it included in vitals. (Thank you for this extension btw.) The other extension uses ip route get 1.1.1.1 to see which ip is used to access the internet.

This comment suggests an easy way to parse /proc/net/fib_trie. I have written the function to do it and I would like to make my first contribution to a Gnome extension. I would like to have your thoughts on a problem I'm having. In the case where there are multiple IP addresses due to being connected to a VPN client or are using both WIFI and ethernet, how could we differentiate the IPs?

Example: (If you see at the bottom of the comment, I have pasted my fib_trie with and without a VPN connection.)

When I am on my laptop, 99% of the time I have the 192.168.1.118 address, and that's what I want to be displayed on the top panel. However, when I connect to a VPN, I want that address to change to the one the VPN gives me (or cycle them).

We could display all of them in the drop down menu, but what about pinning? We can't pin all of them because it would take up too much space. Do we pin "LAN Address" and cycle through them (except '127.0.0.1') every few seconds? I fear it would bring in bug reports from people thinking that their IP changes every "X" seconds. Can we disable pinning "LAN Address"? Pinning one of them would be weird, because the whole point of pinning your ip adress is to see which one is active.

I think a hybrid solution would be best. Use the same implementation as lan-ip-address as an opt-in metric, "Active LAN IP". It won't add unnecessary pings when it's disabled, yet it would integrate one more data point and a whole extra extension for users. On top of that, add a "LAN Address" list created from /proc/net/fib_trie and either disable pinning or cycle through them every few seconds. Not many people use VPNs or multiple NIC's, so for most of the user-base this implementation will be all they need.

I wish someone comes up with a better idea.

Without VPN

Local:
+-- 0.0.0.0/0 3 0 5
|-- 0.0.0.0
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 192.168.1.0/24 2 0 1
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST

With VPN

Local:
+-- 0.0.0.0/0 3 0 4
|-- 0.0.0.0
/0 universe UNICAST
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 172.39.0.0/18 2 0 2
|-- 172.39.0.1
/32 universe UNICAST
+-- 172.39.47.92/30 2 0 2
|-- 172.39.47.93
/32 link UNICAST
|-- 172.39.47.94
/32 host LOCAL
+-- 192.0.0.0/6 2 0 2
+-- 192.168.1.0/24 2 0 1
+-- 192.168.1.0/31 1 0 0
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.1
/32 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST
|-- 195.251.255.75
/32 universe UNICAST

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@al26p@corecoding@CheariX@ispanos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Added: Private IP - #346

Open
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop
Open

Added: Private IP#346
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop

Conversation

@al26p

Copy link
Copy Markdown

Hi !

A quick approach to retrieve local IP from ip route using GLib.

Should answers to #254

* Added: Private IP
* Fix typo and reserved
@corecoding

Copy link
Copy Markdown
Owner

I appreciate this PR. Is there a way to pull this data from a file in /proc or /sys? Shelling to disk will cause lag in the system (such as when scrolling bodies of text, etc). A group of individuals is working on Nvidia GPU support which shells to disk (only way). If shelling is the only way, we'll likely have to combine this code into a separate branch with the Nvidia code and add an alert that tells the user to expect lags - otherwise I'll get a flood of bug reports about lagging

@CheariX

CheariX commented Jul 14, 2023

Copy link
Copy Markdown

You can find the IPs of current NICs in /proc/net/fib_trie.
Parsing might be a little tricky, searching for something like "/32 host LOCAL" should do the trick for IPv4.

@ispanos

Copy link
Copy Markdown

Hello,

Right now I am using gnome-extension-lan-ip-address to 'pin' my local IP. On the one hand I like that there is no icon next to it, but on the other, I would rather have it included in vitals. (Thank you for this extension btw.) The other extension uses ip route get 1.1.1.1 to see which ip is used to access the internet.

This comment suggests an easy way to parse /proc/net/fib_trie. I have written the function to do it and I would like to make my first contribution to a Gnome extension. I would like to have your thoughts on a problem I'm having. In the case where there are multiple IP addresses due to being connected to a VPN client or are using both WIFI and ethernet, how could we differentiate the IPs?

Example: (If you see at the bottom of the comment, I have pasted my fib_trie with and without a VPN connection.)

When I am on my laptop, 99% of the time I have the 192.168.1.118 address, and that's what I want to be displayed on the top panel. However, when I connect to a VPN, I want that address to change to the one the VPN gives me (or cycle them).

We could display all of them in the drop down menu, but what about pinning? We can't pin all of them because it would take up too much space. Do we pin "LAN Address" and cycle through them (except '127.0.0.1') every few seconds? I fear it would bring in bug reports from people thinking that their IP changes every "X" seconds. Can we disable pinning "LAN Address"? Pinning one of them would be weird, because the whole point of pinning your ip adress is to see which one is active.

I think a hybrid solution would be best. Use the same implementation as lan-ip-address as an opt-in metric, "Active LAN IP". It won't add unnecessary pings when it's disabled, yet it would integrate one more data point and a whole extra extension for users. On top of that, add a "LAN Address" list created from /proc/net/fib_trie and either disable pinning or cycle through them every few seconds. Not many people use VPNs or multiple NIC's, so for most of the user-base this implementation will be all they need.

I wish someone comes up with a better idea.

Without VPN

Local:
+-- 0.0.0.0/0 3 0 5
|-- 0.0.0.0
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 192.168.1.0/24 2 0 1
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST

With VPN

Local:
+-- 0.0.0.0/0 3 0 4
|-- 0.0.0.0
/0 universe UNICAST
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 172.39.0.0/18 2 0 2
|-- 172.39.0.1
/32 universe UNICAST
+-- 172.39.47.92/30 2 0 2
|-- 172.39.47.93
/32 link UNICAST
|-- 172.39.47.94
/32 host LOCAL
+-- 192.0.0.0/6 2 0 2
+-- 192.168.1.0/24 2 0 1
+-- 192.168.1.0/31 1 0 0
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.1
/32 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST
|-- 195.251.255.75
/32 universe UNICAST

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@al26p@corecoding@CheariX@ispanos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Added: Private IP - #346

Open
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop
Open

Added: Private IP#346
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop

Conversation

@al26p

Copy link
Copy Markdown

Hi !

A quick approach to retrieve local IP from ip route using GLib.

Should answers to #254

* Added: Private IP
* Fix typo and reserved
@corecoding

Copy link
Copy Markdown
Owner

I appreciate this PR. Is there a way to pull this data from a file in /proc or /sys? Shelling to disk will cause lag in the system (such as when scrolling bodies of text, etc). A group of individuals is working on Nvidia GPU support which shells to disk (only way). If shelling is the only way, we'll likely have to combine this code into a separate branch with the Nvidia code and add an alert that tells the user to expect lags - otherwise I'll get a flood of bug reports about lagging

@CheariX

CheariX commented Jul 14, 2023

Copy link
Copy Markdown

You can find the IPs of current NICs in /proc/net/fib_trie.
Parsing might be a little tricky, searching for something like "/32 host LOCAL" should do the trick for IPv4.

@ispanos

Copy link
Copy Markdown

Hello,

Right now I am using gnome-extension-lan-ip-address to 'pin' my local IP. On the one hand I like that there is no icon next to it, but on the other, I would rather have it included in vitals. (Thank you for this extension btw.) The other extension uses ip route get 1.1.1.1 to see which ip is used to access the internet.

This comment suggests an easy way to parse /proc/net/fib_trie. I have written the function to do it and I would like to make my first contribution to a Gnome extension. I would like to have your thoughts on a problem I'm having. In the case where there are multiple IP addresses due to being connected to a VPN client or are using both WIFI and ethernet, how could we differentiate the IPs?

Example: (If you see at the bottom of the comment, I have pasted my fib_trie with and without a VPN connection.)

When I am on my laptop, 99% of the time I have the 192.168.1.118 address, and that's what I want to be displayed on the top panel. However, when I connect to a VPN, I want that address to change to the one the VPN gives me (or cycle them).

We could display all of them in the drop down menu, but what about pinning? We can't pin all of them because it would take up too much space. Do we pin "LAN Address" and cycle through them (except '127.0.0.1') every few seconds? I fear it would bring in bug reports from people thinking that their IP changes every "X" seconds. Can we disable pinning "LAN Address"? Pinning one of them would be weird, because the whole point of pinning your ip adress is to see which one is active.

I think a hybrid solution would be best. Use the same implementation as lan-ip-address as an opt-in metric, "Active LAN IP". It won't add unnecessary pings when it's disabled, yet it would integrate one more data point and a whole extra extension for users. On top of that, add a "LAN Address" list created from /proc/net/fib_trie and either disable pinning or cycle through them every few seconds. Not many people use VPNs or multiple NIC's, so for most of the user-base this implementation will be all they need.

I wish someone comes up with a better idea.

Without VPN

Local:
+-- 0.0.0.0/0 3 0 5
|-- 0.0.0.0
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 192.168.1.0/24 2 0 1
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST

With VPN

Local:
+-- 0.0.0.0/0 3 0 4
|-- 0.0.0.0
/0 universe UNICAST
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 172.39.0.0/18 2 0 2
|-- 172.39.0.1
/32 universe UNICAST
+-- 172.39.47.92/30 2 0 2
|-- 172.39.47.93
/32 link UNICAST
|-- 172.39.47.94
/32 host LOCAL
+-- 192.0.0.0/6 2 0 2
+-- 192.168.1.0/24 2 0 1
+-- 192.168.1.0/31 1 0 0
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.1
/32 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST
|-- 195.251.255.75
/32 universe UNICAST

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@al26p@corecoding@CheariX@ispanos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Added: Private IP - #346

Open
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop
Open

Added: Private IP#346
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop

Conversation

@al26p

Copy link
Copy Markdown

Hi !

A quick approach to retrieve local IP from ip route using GLib.

Should answers to #254

* Added: Private IP
* Fix typo and reserved
@corecoding

Copy link
Copy Markdown
Owner

I appreciate this PR. Is there a way to pull this data from a file in /proc or /sys? Shelling to disk will cause lag in the system (such as when scrolling bodies of text, etc). A group of individuals is working on Nvidia GPU support which shells to disk (only way). If shelling is the only way, we'll likely have to combine this code into a separate branch with the Nvidia code and add an alert that tells the user to expect lags - otherwise I'll get a flood of bug reports about lagging

@CheariX

CheariX commented Jul 14, 2023

Copy link
Copy Markdown

You can find the IPs of current NICs in /proc/net/fib_trie.
Parsing might be a little tricky, searching for something like "/32 host LOCAL" should do the trick for IPv4.

@ispanos

Copy link
Copy Markdown

Hello,

Right now I am using gnome-extension-lan-ip-address to 'pin' my local IP. On the one hand I like that there is no icon next to it, but on the other, I would rather have it included in vitals. (Thank you for this extension btw.) The other extension uses ip route get 1.1.1.1 to see which ip is used to access the internet.

This comment suggests an easy way to parse /proc/net/fib_trie. I have written the function to do it and I would like to make my first contribution to a Gnome extension. I would like to have your thoughts on a problem I'm having. In the case where there are multiple IP addresses due to being connected to a VPN client or are using both WIFI and ethernet, how could we differentiate the IPs?

Example: (If you see at the bottom of the comment, I have pasted my fib_trie with and without a VPN connection.)

When I am on my laptop, 99% of the time I have the 192.168.1.118 address, and that's what I want to be displayed on the top panel. However, when I connect to a VPN, I want that address to change to the one the VPN gives me (or cycle them).

We could display all of them in the drop down menu, but what about pinning? We can't pin all of them because it would take up too much space. Do we pin "LAN Address" and cycle through them (except '127.0.0.1') every few seconds? I fear it would bring in bug reports from people thinking that their IP changes every "X" seconds. Can we disable pinning "LAN Address"? Pinning one of them would be weird, because the whole point of pinning your ip adress is to see which one is active.

I think a hybrid solution would be best. Use the same implementation as lan-ip-address as an opt-in metric, "Active LAN IP". It won't add unnecessary pings when it's disabled, yet it would integrate one more data point and a whole extra extension for users. On top of that, add a "LAN Address" list created from /proc/net/fib_trie and either disable pinning or cycle through them every few seconds. Not many people use VPNs or multiple NIC's, so for most of the user-base this implementation will be all they need.

I wish someone comes up with a better idea.

Without VPN

Local:
+-- 0.0.0.0/0 3 0 5
|-- 0.0.0.0
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 192.168.1.0/24 2 0 1
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST

With VPN

Local:
+-- 0.0.0.0/0 3 0 4
|-- 0.0.0.0
/0 universe UNICAST
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 172.39.0.0/18 2 0 2
|-- 172.39.0.1
/32 universe UNICAST
+-- 172.39.47.92/30 2 0 2
|-- 172.39.47.93
/32 link UNICAST
|-- 172.39.47.94
/32 host LOCAL
+-- 192.0.0.0/6 2 0 2
+-- 192.168.1.0/24 2 0 1
+-- 192.168.1.0/31 1 0 0
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.1
/32 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST
|-- 195.251.255.75
/32 universe UNICAST

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@al26p@corecoding@CheariX@ispanos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Added: Private IP - #346

Open
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop
Open

Added: Private IP#346
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop

Conversation

@al26p

Copy link
Copy Markdown

Hi !

A quick approach to retrieve local IP from ip route using GLib.

Should answers to #254

* Added: Private IP
* Fix typo and reserved
@corecoding

Copy link
Copy Markdown
Owner

I appreciate this PR. Is there a way to pull this data from a file in /proc or /sys? Shelling to disk will cause lag in the system (such as when scrolling bodies of text, etc). A group of individuals is working on Nvidia GPU support which shells to disk (only way). If shelling is the only way, we'll likely have to combine this code into a separate branch with the Nvidia code and add an alert that tells the user to expect lags - otherwise I'll get a flood of bug reports about lagging

@CheariX

CheariX commented Jul 14, 2023

Copy link
Copy Markdown

You can find the IPs of current NICs in /proc/net/fib_trie.
Parsing might be a little tricky, searching for something like "/32 host LOCAL" should do the trick for IPv4.

@ispanos

Copy link
Copy Markdown

Hello,

Right now I am using gnome-extension-lan-ip-address to 'pin' my local IP. On the one hand I like that there is no icon next to it, but on the other, I would rather have it included in vitals. (Thank you for this extension btw.) The other extension uses ip route get 1.1.1.1 to see which ip is used to access the internet.

This comment suggests an easy way to parse /proc/net/fib_trie. I have written the function to do it and I would like to make my first contribution to a Gnome extension. I would like to have your thoughts on a problem I'm having. In the case where there are multiple IP addresses due to being connected to a VPN client or are using both WIFI and ethernet, how could we differentiate the IPs?

Example: (If you see at the bottom of the comment, I have pasted my fib_trie with and without a VPN connection.)

When I am on my laptop, 99% of the time I have the 192.168.1.118 address, and that's what I want to be displayed on the top panel. However, when I connect to a VPN, I want that address to change to the one the VPN gives me (or cycle them).

We could display all of them in the drop down menu, but what about pinning? We can't pin all of them because it would take up too much space. Do we pin "LAN Address" and cycle through them (except '127.0.0.1') every few seconds? I fear it would bring in bug reports from people thinking that their IP changes every "X" seconds. Can we disable pinning "LAN Address"? Pinning one of them would be weird, because the whole point of pinning your ip adress is to see which one is active.

I think a hybrid solution would be best. Use the same implementation as lan-ip-address as an opt-in metric, "Active LAN IP". It won't add unnecessary pings when it's disabled, yet it would integrate one more data point and a whole extra extension for users. On top of that, add a "LAN Address" list created from /proc/net/fib_trie and either disable pinning or cycle through them every few seconds. Not many people use VPNs or multiple NIC's, so for most of the user-base this implementation will be all they need.

I wish someone comes up with a better idea.

Without VPN

Local:
+-- 0.0.0.0/0 3 0 5
|-- 0.0.0.0
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 192.168.1.0/24 2 0 1
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST

With VPN

Local:
+-- 0.0.0.0/0 3 0 4
|-- 0.0.0.0
/0 universe UNICAST
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 172.39.0.0/18 2 0 2
|-- 172.39.0.1
/32 universe UNICAST
+-- 172.39.47.92/30 2 0 2
|-- 172.39.47.93
/32 link UNICAST
|-- 172.39.47.94
/32 host LOCAL
+-- 192.0.0.0/6 2 0 2
+-- 192.168.1.0/24 2 0 1
+-- 192.168.1.0/31 1 0 0
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.1
/32 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST
|-- 195.251.255.75
/32 universe UNICAST

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@al26p@corecoding@CheariX@ispanos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Added: Private IP - #346

Open
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop
Open

Added: Private IP#346
al26p wants to merge 1 commit into
corecoding:develop-divergedfrom
al26p:develop

Conversation

@al26p

Copy link
Copy Markdown

Hi !

A quick approach to retrieve local IP from ip route using GLib.

Should answers to #254

* Added: Private IP
* Fix typo and reserved
@corecoding

Copy link
Copy Markdown
Owner

I appreciate this PR. Is there a way to pull this data from a file in /proc or /sys? Shelling to disk will cause lag in the system (such as when scrolling bodies of text, etc). A group of individuals is working on Nvidia GPU support which shells to disk (only way). If shelling is the only way, we'll likely have to combine this code into a separate branch with the Nvidia code and add an alert that tells the user to expect lags - otherwise I'll get a flood of bug reports about lagging

@CheariX

CheariX commented Jul 14, 2023

Copy link
Copy Markdown

You can find the IPs of current NICs in /proc/net/fib_trie.
Parsing might be a little tricky, searching for something like "/32 host LOCAL" should do the trick for IPv4.

@ispanos

Copy link
Copy Markdown

Hello,

Right now I am using gnome-extension-lan-ip-address to 'pin' my local IP. On the one hand I like that there is no icon next to it, but on the other, I would rather have it included in vitals. (Thank you for this extension btw.) The other extension uses ip route get 1.1.1.1 to see which ip is used to access the internet.

This comment suggests an easy way to parse /proc/net/fib_trie. I have written the function to do it and I would like to make my first contribution to a Gnome extension. I would like to have your thoughts on a problem I'm having. In the case where there are multiple IP addresses due to being connected to a VPN client or are using both WIFI and ethernet, how could we differentiate the IPs?

Example: (If you see at the bottom of the comment, I have pasted my fib_trie with and without a VPN connection.)

When I am on my laptop, 99% of the time I have the 192.168.1.118 address, and that's what I want to be displayed on the top panel. However, when I connect to a VPN, I want that address to change to the one the VPN gives me (or cycle them).

We could display all of them in the drop down menu, but what about pinning? We can't pin all of them because it would take up too much space. Do we pin "LAN Address" and cycle through them (except '127.0.0.1') every few seconds? I fear it would bring in bug reports from people thinking that their IP changes every "X" seconds. Can we disable pinning "LAN Address"? Pinning one of them would be weird, because the whole point of pinning your ip adress is to see which one is active.

I think a hybrid solution would be best. Use the same implementation as lan-ip-address as an opt-in metric, "Active LAN IP". It won't add unnecessary pings when it's disabled, yet it would integrate one more data point and a whole extra extension for users. On top of that, add a "LAN Address" list created from /proc/net/fib_trie and either disable pinning or cycle through them every few seconds. Not many people use VPNs or multiple NIC's, so for most of the user-base this implementation will be all they need.

I wish someone comes up with a better idea.

Without VPN

Local:
+-- 0.0.0.0/0 3 0 5
|-- 0.0.0.0
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 192.168.1.0/24 2 0 1
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST

With VPN

Local:
+-- 0.0.0.0/0 3 0 4
|-- 0.0.0.0
/0 universe UNICAST
/0 universe UNICAST
+-- 127.0.0.0/8 2 0 2
+-- 127.0.0.0/31 1 0 0
|-- 127.0.0.0
/8 host LOCAL
|-- 127.0.0.1
/32 host LOCAL
|-- 127.255.255.255
/32 link BROADCAST
+-- 172.39.0.0/18 2 0 2
|-- 172.39.0.1
/32 universe UNICAST
+-- 172.39.47.92/30 2 0 2
|-- 172.39.47.93
/32 link UNICAST
|-- 172.39.47.94
/32 host LOCAL
+-- 192.0.0.0/6 2 0 2
+-- 192.168.1.0/24 2 0 1
+-- 192.168.1.0/31 1 0 0
|-- 192.168.1.0
/24 link UNICAST
|-- 192.168.1.1
/32 link UNICAST
|-- 192.168.1.118
/32 host LOCAL
|-- 192.168.1.255
/32 link BROADCAST
|-- 195.251.255.75
/32 universe UNICAST

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@al26p@corecoding@CheariX@ispanos