I have bitcoind serving cfilters to an LND node on my local network on separate machines. Both have `192.168.1.x` IP addresses and they connect fine using neutrino. However, the LND node does not appear in the `bitcoin-cli -netinfo` table.

The reason is because if you look at the `getpeerinfo` response:

```
{
  "id": 11728,
  "addr": "192.168.1.153:64367",
  "addrbind": "192.168.1.13:8333",
  "addrlocal": "192.168.1.13:8333",
  "network": "not_publicly_routable",
  "services": "0000000000000048",
  "servicesnames": [
    "WITNESS",
    "COMPACT_FILTERS"
  ],
...
```

...so bitcoin-cli ignores the peer here:

https://github.com/bitcoin/bitcoin/blob/9c47eb450346937b3d7ee21b9e669b5c91a7ed6c/src/bitcoin-cli.cpp#L477-L479

...expecting one of these strings only:

https://github.com/bitcoin/bitcoin/blob/9c47eb450346937b3d7ee21b9e669b5c91a7ed6c/src/bitcoin-cli.cpp#L58

I'm happy to fix / add this myself unless there's a reason? Maybe instead of skipping the peer we can just add an "unknown network" category, or "other" ...?

cc: @jonatack 
{
    HTTPReply *reply = static_cast<HTTPReply*>(ctx);
    if (req == nullptr) {
        /* If req is nullptr, it means an error occurred while connecting: the
         * error code will have been passed to http_error_cb.
         */
        reply->status = 0;
        return;
    }
    reply->status = evhttp_request_get_response_code(req);
    struct evbuffer *buf = evhttp_request_get_input_buffer(req);
    if (buf)
    {
        size_t size = evbuffer_get_length(buf);
        const char *data = (const char*)evbuffer_pullup(buf, size);
        if (data)
            reply->body = std::string(data, size);
        evbuffer_drain(buf, size);
    }
}
static void http_error_cb(enum evhttp_request_error err, void *ctx)
{
    HTTPReply *reply = static_cast<HTTPReply*>(ctx);
    reply->error = err;
}
/** Class that handles the conversion from a command-line to a JSON-RPC request,
 * as well as converting back to a JSON object that can be shown as result.
 */
class BaseRequestHandler