Я подключаюсь к VPN с помощью vpnc. Когда VPN отключается, либо через тайм-аут, либо лимит сеанса достигнут, VPN прекращается, но resol.conf продолжает содержать ссылки на мою VPN-сеть.
resolv.conf перед подключением VPN:
nameserver 127.0.0.1
search mylocalnetwork
resolv.conf после подключения VPN и остается после потери VPN:
nameserver X.X.X.X
nameserver X.X.X.Z
nameserver 127.0.0.1
search internal.mycompany.com mylocalnetwork
В 10.04, когда VPN проиграл, я запустил этот скрипт для обновления resolve.conf:
7$ cat bin/refreshResolvconf.sh
#!/bin/bash
#if [ -e /etc/resolvconf/run/interface/tun0 -a "`pidof vpnc`" == "" ]; then /sbin/resolvconf -d tun0; fi
if [ -e /etc/resolvconf/run/interface/tun0 -a "`pidof vpnc`" == "" ]
then
/sbin/resolvconf -d tun0;
echo "Refreshed resolv.conf"
fi
Но сменилось изменение resolveconf в 12.04, поэтому этот скрипт больше не применим.
Чтобы решить, я вручную отредактировал файл resol.conf или выключил / «сеть gnome-control-center».
У кого-то еще такая же проблема? Как можно изменить resolv.conf после отключения VPN?
Путь / etc / resolvconf / run больше не используется.
Следующий фрагмент удалит запись tun0, если процесс vpnc не запущен.
[ "$(pidof vpnc)" ] || resolvconf -d tun0
Правильно решение проблемы заключалось в том, чтобы упреждать, что vpnc будет завершен таким образом, чтобы он очищался до выхода, когда очистка включает удаление любых записей resolvconf, которые она создала при подключении.
Путь / etc / resolvconf / run больше не используется.
Следующий фрагмент удалит запись tun0, если процесс vpnc не запущен.
[ "$(pidof vpnc)" ] || resolvconf -d tun0
Правильно решение проблемы заключалось в том, чтобы упреждать, что vpnc будет завершен таким образом, чтобы он очищался до выхода, когда очистка включает удаление любых записей resolvconf, которые она создала при подключении.
Путь / etc / resolvconf / run больше не используется.
Следующий фрагмент удалит запись tun0, если процесс vpnc не запущен.
[ "$(pidof vpnc)" ] || resolvconf -d tun0
Правильно решение проблемы заключалось в том, чтобы упреждать, что vpnc будет завершен таким образом, чтобы он очищался до выхода, когда очистка включает удаление любых записей resolvconf, которые она создала при подключении.
Путь / etc / resolvconf / run больше не используется.
Следующий фрагмент удалит запись tun0, если процесс vpnc не запущен.
[ "$(pidof vpnc)" ] || resolvconf -d tun0
Правильно решение проблемы заключалось в том, чтобы упреждать, что vpnc будет завершен таким образом, чтобы он очищался до выхода, когда очистка включает удаление любых записей resolvconf, которые она создала при подключении.
Путь / etc / resolvconf / run больше не используется.
Следующий фрагмент удалит запись tun0, если процесс vpnc не запущен.
[ "$(pidof vpnc)" ] || resolvconf -d tun0
Правильно решение проблемы заключалось в том, чтобы упреждать, что vpnc будет завершен таким образом, чтобы он очищался до выхода, когда очистка включает удаление любых записей resolvconf, которые она создала при подключении.
Путь / etc / resolvconf / run больше не используется.
Следующий фрагмент удалит запись tun0, если процесс vpnc не запущен.
[ "$(pidof vpnc)" ] || resolvconf -d tun0
Правильно решение проблемы заключалось в том, чтобы упреждать, что vpnc будет завершен таким образом, чтобы он очищался до выхода, когда очистка включает удаление любых записей resolvconf, которые она создала при подключении.
Путь / etc / resolvconf / run больше не используется.
Следующий фрагмент удалит запись tun0, если процесс vpnc не запущен.
[ "$(pidof vpnc)" ] || resolvconf -d tun0
Правильно решение проблемы заключалось в том, чтобы упреждать, что vpnc будет завершен таким образом, чтобы он очищался до выхода, когда очистка включает удаление любых записей resolvconf, которые она создала при подключении.