Files
ip-info/mmdbmeld.yml
2024-07-13 23:58:47 +07:00

53 lines
2.9 KiB
YAML

databases:
- name: "My IPv4 GeoIP DB"
mmdb:
ipVersion: 4 # Note: IPv4 mmdb can only hold IPv4.
recordSize: 24 # One of 24, 28, 32. Start small, increase if it fails.
types: # Best to always use the same established keys as MaxMind.
"country.iso_code": string
"autonomous_system_organization": string
"autonomous_system_number": uint32
inputs: # Source data and their mapping.
# Inputs are processed as listed. Earlier entries are overwritten by later entries.
- file: "data/geolite2-country-ipv4.csv"
fields: ["from", "to", "country.iso_code"]
- file: "data/geolite2-asn-ipv4.csv"
fields: ["from", "to", "autonomous_system_number", "autonomous_system_organization"]
output: data/geoip-v4.mmdb
optimize:
floatDecimals: 2 # Limit floats (eg. coordinates) to decimals for smaller DB size. (0=off, set to -1 to no decimals)
forceIPVersion: true # Check IPs and discard IPs with the wrong version. (IPv4 and live in IPv6 mmdb)
maxPrefix: 0 # Remove any network prefixes greater than maxPrefix for smaller DB size. (0=off)
merge:
conditionalResets: # Reset set of top level entries if another set is changed.
# Reset the location entry when the country is changed.
# If the new entry also has a location, it is kept, but a different country without location resets the location.
- ifChanged: ["country"]
reset: ["location"]
# - name: "My IPv6 GeoIP DB"
# mmdb:
# ipVersion: 6 # Note: IPv6 mmdb can also hold IPv4.
# recordSize: 24 # One of 24, 28, 32. Start small, increase if it fails.
# types: # Best to always use the same established keys as MaxMind.
# "country.iso_code": string
# "autonomous_system_organization": string
# "autonomous_system_number": uint32
# inputs: # Source data and their mapping.
# # Inputs are processed as listed. Earlier entries are overwritten by later entries.
# - file: "input/iptoasn-asn-ipv6.csv"
# fields: ["from", "to", "autonomous_system_number", "autonomous_system_organization"]
# - file: "input/geo-whois-asn-country-ipv6.csv"
# fields: ["from", "to", "country.iso_code"]
# output: output/geoip-v6.mmdb
# optimize:
# floatDecimals: 2 # Limit floats (eg. coordinates) to decimals for smaller DB size. (0=off, set to -1 to no decimals)
# forceIPVersion: true # Check IPs and discard IPs with the wrong version. (IPv4 and live in IPv6 mmdb)
# maxPrefix: 0 # Remove any network prefixes greater than maxPrefix for smaller DB size. (0=off)
# merge:
# conditionalResets: # Reset set of top level entries if another set is changed.
# # Reset the location entry when the country is changed.
# # If the new entry also has a location, it is kept, but a different country without location resets the location.
# - ifChanged: ["country"]
# reset: ["location"]