TODO: read source address from X-Forward-For header, if available