func (r *Reader) Networks(options ...NetworksOption) *Networks {
	var networks *Networks
	if r.Metadata.IPVersion == 6 {
		networks = r.NetworksWithin(allIPv6, options...)
	} else {
		networks = r.NetworksWithin(allIPv4, options...)
	}
	return networks
}
Networks returns an iterator that can be used to traverse all networks in
the database.

Please note that a MaxMind DB may map IPv4 networks into several locations
in an IPv6 database. This iterator will iterate over all of these locations
separately. To only iterate over the IPv4 networks once, use the
SkipAliasedNetworks option.
package maxminddb
import (
	"fmt"
	"net"
)
type netNode struct {
	ip      net.IP
	bit     uint
	pointer uint
}
type Networks struct {
	reader   *Reader
	nodes    []netNode  
	lastNode netNode
	err      error
	skipAliasedNetworks bool
}
var (
	allIPv4 = &net.IPNet{IP: make(net.IP, 4), Mask: net.CIDRMask(0, 32)}
	allIPv6 = &net.IPNet{IP: make(net.IP, 16), Mask: net.CIDRMask(0, 128)}
)
type NetworksOption func(*Networks)
func SkipAliasedNetworks(networks *Networks) {
	networks.skipAliasedNetworks = true
}