Preview Ruby 4.1 is a preview. It can change before the final release. Switch to Ruby 4.0 →
instance method
Addrinfo#ipv4_private?
() -> bool
ipv4_private?
ext/socket/raddrinfo.c
View on GitHub ↗
static VALUE
addrinfo_ipv4_private_p(VALUE self)
{
uint32_t a;
if (!extract_in_addr(self, &a)) return Qfalse;
if ((a & 0xff000000) == 0x0a000000 || /* 10.0.0.0/8 */
(a & 0xfff00000) == 0xac100000 || /* 172.16.0.0/12 */
(a & 0xffff0000) == 0xc0a80000) /* 192.168.0.0/16 */
return Qtrue;
return Qfalse;
}
Returns true for IPv4 private address (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16). It returns false otherwise.
See also
#ipv4_multicast?
#ipv6?
#ipv4_loopback?
#ipv6_linklocal?
also in
4.0 · 3.4 · 3.3 · 3.2 · 3.1 · 3.0