diff --git a/handlers/reverseproxy.go b/handlers/reverseproxy.go index 98ad132..ed5a72e 100644 --- a/handlers/reverseproxy.go +++ b/handlers/reverseproxy.go @@ -60,6 +60,14 @@ func (p *tcpProxy) ServeHTTP(w http.ResponseWriter, r *http.Request) { logFunc = p.ErrorLog.Printf } + vars := mux.Vars(r) + instanceIP := vars["node"] + + if i := core.InstanceFindByIP(strings.Replace(instanceIP, "-", ".", -1)); i == nil { + w.WriteHeader(http.StatusServiceUnavailable) + return + } + outreq := new(http.Request) // shallow copying *outreq = *r