{"record":{"id":"0626266835be1a8e","repo":"slackhq/nebula","slug":"static-map-network-must-be-one-of-ip-ip4-or-ip6","errorCode":null,"errorMessage":"static_map.network must be one of ip, ip4, or ip6","messagePattern":"static_map\\.network must be one of ip, ip4, or ip6","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"lighthouse.go","lineNumber":435,"sourceCode":"\tif err != nil {\n\t\treturn 0, err\n\t}\n\treturn d, nil\n}\n\nfunc getStaticMapLookupTimeout(c *config.C) (time.Duration, error) {\n\tlookupTimeout := c.GetString(\"static_map.lookup_timeout\", \"250ms\")\n\td, err := time.ParseDuration(lookupTimeout)\n\tif err != nil {\n\t\treturn 0, err\n\t}\n\treturn d, nil\n}\n\nfunc getStaticMapNetwork(c *config.C) (string, error) {\n\tnetwork := c.GetString(\"static_map.network\", \"ip4\")\n\tif network != \"ip\" && network != \"ip4\" && network != \"ip6\" {\n\t\treturn \"\", fmt.Errorf(\"static_map.network must be one of ip, ip4, or ip6\")\n\t}\n\treturn network, nil\n}\n\nfunc (lh *LightHouse) loadStaticMap(c *config.C, staticList map[netip.Addr]struct{}) error {\n\td, err := getStaticMapCadence(c)\n\tif err != nil {\n\t\treturn err\n\t}\n\n\tnetwork, err := getStaticMapNetwork(c)\n\tif err != nil {\n\t\treturn err\n\t}\n\n\tlookupTimeout, err := getStaticMapLookupTimeout(c)\n\tif err != nil {\n\t\treturn err","sourceCodeStart":417,"sourceCodeEnd":453,"githubUrl":"https://github.com/slackhq/nebula/blob/dd8f660c0ac37903ec4080ca4d3c861ba9342ceb/lighthouse.go#L417-L453","documentation":"getStaticMapNetwork validates the static_map.network config value. Only 'ip', 'ip4', or 'ip6' are accepted; any other string makes config parsing fail, because the value controls which address family static_map.hosts entries resolve to.","triggerScenarios":"Configuring static_map.network with a value other than ip/ip4/ip6, e.g. 'ipv4', 'IPv6', 'tcp4', or an empty custom string.","commonSituations":"Typo like 'ipv4' instead of 'ip4'; capitalized value (config values are case-sensitive here); copying an example that used a different schema.","solutions":["Set static_map.network to exactly ip, ip4, or ip6","Remove the static_map.network key to use the ip4 default","Check for case sensitivity and whitespace in the YAML value"],"exampleFix":"// before\nstatic_map:\n  network: ipv4\n// after\nstatic_map:\n  network: ip4","handlingStrategy":"validation","validationCode":"network := c.GetString(\"static_map.network\", \"ip4\")\nif network != \"ip\" && network != \"ip4\" && network != \"ip6\" {\n    return errors.New(\"static_map.network must be one of ip, ip4, or ip6\")\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Only use the literal values ip/ip4/ip6 (lowercase, no whitespace)","Run 'nebula -test' to catch config typos before restart","Omit the key entirely to accept the ip4 default"],"tags":["configuration","static-map","validation"],"backgroundTag":"invalid-config-value","analyzedSha":"dd8f660c0ac37903ec4080ca4d3c861ba9342ceb","analyzedAt":"2026-09-03T11:13:55.444Z","contentChangedAt":"2026-09-03T11:13:55.444Z","schemaVersion":2},"datasetVersion":"2026-09-10T17:17:09.494Z"}