Unable to edit the custom DNS IPv4 adress in the web interface

It seems I was hit by murphy's law today :neutral_face:

I am using Pi-hole Version v2.12.1 Web Interface Version v2.4
I am unable to change the custom IPv4 address of the Upstream DNS server.
I can delete the old one, but when I start typing in the new one, it stops after one number:

A reload of the web interface and a restart of the server does not help.

Edit: Output of the debug console:

Run pihole -d for a debug token.

The token is: 1vtyd74axo

Do your original custom addresses show up normally? Does this issue happen to both custom addresses?

Yes they show up normally as you can see here:

I cannot change both of them.

Does the same thing happen on all clients?

Yes, all clients are affected.

Have you tried copy&pasting the IPs? We recently discovered a bug with the validation library I have used for validating both IPv4 and IPv6 addresses. However, this library proved to be a bit buggy and will be replaced by the old one and I implemented only a rough validation for IPv6 addresses.

If you do not use Copy&Paste it should work for now.

What browser do you use? I do not recognize the output from your debug console.

@DL6ER If I use copy&paste it works, but if I try to type in the new IP it does not work.

For the test I have used Safari Version 10.1 (12603.1.20.1) on macOS (v10.12.4) - I have tried it now with Firefox and it works without any issues - weird.

We found that support even for something as widely used as JQuery can differ quite drastically across different browsers... Trying to keep everything always compatible everywhere is close to impossible, especially on :apple: devices since they are so ultra-expensive (mostly without justification) and only a few of us have some of them (and then there are new ones every so often).

You do a very good job. Thank you very much for your support. Pihole is a very useful software, which has replaced all my Ad-Blocker Add-ons. As little thankyou I have send you a donation - keep up the good work!

I've been able to replicate this using BrowserStack on OSX Sierra with Safari 10.0.

I've found a few open issues for this in the library we're using to validate IP addresses:
https://code.google.com/archive/p/jquery-input-ip-address-control/issues/1

The error occurs because jQuery 1.9 removes something that the library uses to detect the browser type, which means that either we move to jQuery 1.8, fix the plugin, or remove the plugin and validate IP addresses ourselves.

1 Like

@Mcat12 We change the library back to what we had before anyways. Not worth looking into this further but thanks for checking!