Я маршрутизирую DNS-запросы через dnsmasq, чтобы домены, которые я использую для локальной разработки, указывали на 127.0.0.1. Это прекрасно работает, когда я подключен к Интернету через Wi-Fi или Ethernet, но у меня возникают проблемы, когда я вообще не подключен к Интернету.
В dnsmasq.conf у меня есть этот параметр:
address=/gentoo/127.0.0.1
Отключая все сетевые подключения, я запускаю:
$ dscacheutil -q host -a name test.gentoo
name: test.gentoo
ip_address: 127.0.0.1
$ ping test.gentoo
PING test.gentoo (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.043 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.107 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.177 ms
^C
--- test.gentoo ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.043/0.109/0.177/0.055 ms
Так что, похоже, работает нормально. Но если я пытаюсь открыть http://test.gentoo/ в Chrome, я получаю сообщение:
Невозможно подключиться к Интернету. Google Chrome не может отобразить веб-страницу, поскольку ваш компьютер не подключен к Интернету.
Вы можете попытаться диагностировать проблему, выполнив следующие действия:
Перейдите в Приложения> Системные настройки> Сеть> Помогите мне проверить ваше соединение. Ошибка 106 (net::ERR_INTERNET_DISCONNECTED): Интернет-соединение потеряно.
Chrome видит, что у меня нет сетевого подключения, и он даже не пытается выполнить запрос.
Любая идея, как я могу обойти это? Можно ли создать фиктивный сетевой интерфейс, чтобы убедить Chrome, что я подключен к Интернету? Можно ли заставить его отправлять запросы, даже если я не подключен? Есть другие идеи?
Я попробовал решение по адресу https://serverfault.com/q/22419/92378, но оно не сработало, так как я на OS X 10.7.3, поэтому распознаватель игнорируется, когда не подключен к сети.