{"record":{"id":"08313702e0d28b6d","repo":"slackhq/nebula","slug":"entry-v-mtu-in-tun-unsafe-routes-is-below-500-v","errorCode":null,"errorMessage":"entry %v.mtu in tun.unsafe_routes is below 500: %v","messagePattern":"entry (.+?)\\.mtu in tun\\.unsafe_routes is below 500: (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"overlay/route.go","lineNumber":184,"sourceCode":"\troutes := make([]Route, len(rawRoutes))\n\tfor i, r := range rawRoutes {\n\t\tm, ok := r.(map[string]any)\n\t\tif !ok {\n\t\t\treturn nil, fmt.Errorf(\"entry %v in tun.unsafe_routes is invalid\", i+1)\n\t\t}\n\n\t\tvar mtu int\n\t\tif rMtu, ok := m[\"mtu\"]; ok {\n\t\t\tmtu, ok = rMtu.(int)\n\t\t\tif !ok {\n\t\t\t\tmtu, err = strconv.Atoi(rMtu.(string))\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn nil, fmt.Errorf(\"entry %v.mtu in tun.unsafe_routes is not an integer: %v\", i+1, err)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif mtu != 0 && mtu < 500 {\n\t\t\t\treturn nil, fmt.Errorf(\"entry %v.mtu in tun.unsafe_routes is below 500: %v\", i+1, mtu)\n\t\t\t}\n\t\t}\n\n\t\trMetric, ok := m[\"metric\"]\n\t\tif !ok {\n\t\t\trMetric = 0\n\t\t}\n\n\t\tmetric, ok := rMetric.(int)\n\t\tif !ok {\n\t\t\t_, err = strconv.ParseInt(rMetric.(string), 10, 32)\n\t\t\tif err != nil {\n\t\t\t\treturn nil, fmt.Errorf(\"entry %v.metric in tun.unsafe_routes is not an integer: %v\", i+1, err)\n\t\t\t}\n\t\t}\n\n\t\tif metric < 0 || metric > math.MaxInt32 {\n\t\t\treturn nil, fmt.Errorf(\"entry %v.metric in tun.unsafe_routes is not in range (0-%d) : %v\", i+1, math.MaxInt32, metric)","sourceCodeStart":166,"sourceCodeEnd":202,"githubUrl":"https://github.com/slackhq/nebula/blob/dd8f660c0ac37903ec4080ca4d3c861ba9342ceb/overlay/route.go#L166-L202","documentation":"Config validation error in parseUnsafeRoutes: the i+1-th entry sets a non-zero mtu below the enforced minimum of 500, which would produce a route with an unusably small MTU. mtu == 0 (unset) is allowed and means default.","triggerScenarios":"Thrown at overlay/route.go:184 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Raise the entry's mtu to 500 or above","Remove the mtu key to use the default"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"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"}