Благодаря подсказке Фрэнка Томаса я в конце концов нашел грубый способ сделать это.
Я ненавижу скрипты BASH, и с этим вполне могут быть другие проблемы, поэтому, если у кого-то есть лучший способ сделать это, обязательно добавьте комментарий, предлагающий способы сделать его лучше, и я обновлю его.
Для Ubuntu 16.04 я создал файл с именем addip в /etc/network/if-up.d со следующим содержимым:
#!/bin/sh set -e ADDITIONAL_IPADDR="10.0.0.111/24" PREFERRED_INTERFACE="wlp4s0" # Description: Add ip address to allow for local services on a machine that's # assigned an ip address by dhcp over a wifi nic if [ $IFACE != $PREFERRED_INTERFACE ] || [ $ADDRFAM != inet ]; then exit 0 fi if [ -x /bin/ip ] ; then # ip already present? ip addr show | grep -q "$ADDITIONAL_IPADDR[[:space:]]" && exit 0 /sbin/ip addr add $ADDITIONAL_IPADDR dev $PREFERRED_INTERFACE fi
Возможно, вы захотите изменить значения ADDITIONAL_IPADDR и PREFERRED_INTERFACE.
Затем вы можете настроить предпочитаемый DNS-сервер так, чтобы он возвращал этот IP-адрес, который вы указали в ADDITIONAL_IPADDR для вашей настройки.