This week I had three airconditioners installed - 2 Toshiba Kazumi's (RAS-B07J2KVSG (archived)) with optional WiFi module (archived) and a Haori (RAS-N4KVRG-E (archived)) which has the WiFi module built-in. Unfortunately I was on vacation during installation so the installers couldn't setup the AC's with my WiFi. Being reasonably capable of figuring this out myself I told them not to bother and I'd do it myself. I was aware of the (only) requirement of the WiFi modules for the AC's: they require a 2.4Ghz WiFi connection.
2021-07-30
2021-07-06
Storing IP's and networks in SQL Server efficiently
When you Google on how to store IP addresses efficiently in SQL server few approaches keep coming up. Most of these approaches most notably tend to 'forget' about IPv6 and work exclusively for IPv4 IP addresses. Other approaches use a (var)char to store IP addresses and this works fine, as long as your (var)char allows up to 39 characters if you want to be able to handle IPv6 IP addresses. It'll also work fine whenever all you need to do is store an IP address or maybe even search for a specific IP address, such as in logging scenarios, where you can write SELECT * FROM MYTABLE WHERE [ip] = '192.168.0.1'. However, when storing networks (such as 192.168.0.0/24 in CIDR notation) things get a bit harder. If you want to find all networks that 'contain' a given network you're in for some trouble. Another solution is to store IP's as (var)binary. Again, most solutions I found only worked with IPv4 but it's perfectly possible to store both IPv4 and IPv6 IP's in a single (var)binary field.