Настройте dnsmasq NetworkManager для использования / etc / hosts

Это действительно два разных вопроса, но да, это возможно и легко. Для дальнейшего использования, пожалуйста, имейте в виду, что чем больше деталей вы предоставите в своем вопросе, тем более подробными могут быть ответы.

Здесь я приведу пример. Это будет какой-то текст, но это очень просто. Я предполагаю, что на рабочем столе есть большой монитор и ноутбук. Вы хотите использовать ноутбук как клавиатуру и мышь для рабочего стола, подключив его к рабочему столу с помощью сетевого кабеля. По сути, рабочий стол будет чувствовать себя как расширение ноутбука.

Сеть

Для этой процедуры есть два шага. Сначала вам нужно настроить сеть. Есть много способов сделать это, но самый простой способ - открыть значок сети> Изменить соединения на рабочем столе. Выберите сетевой интерфейс для совместного использования с ноутбуком и нажмите «Изменить». В появившемся диалоговом окне найдите IPv4. Существует поле под названием «Метод». Выберите «Совместно с другими компьютерами». Вот и все. Теперь вы можете просто подключить ноутбук и настольный компьютер с помощью сетевого кабеля, и они будут автоматически обмениваться данными. Ноутбук также получит доступ к интернет-соединению настольных компьютеров.

Запишите имена хостов ваших компьютеров. Вы можете сделать это, просто открыв терминал. Вы увидите имя пользователя @ hostname: ~ $. Если вам не нравятся имена, которые у них есть, вы можете легко их изменить, запустив sudo nano /etc/hostname. Отредактируйте что-то, что вы запомните, например, bambudesktop и bambulaptop. Используйте только a-z 0-9 и тире. Если вы меняете их, вам необходимо перезагрузить их.

Сеть

Следующее, что нужно сделать, - включить использование ноутбука в качестве клавиатуры и мыши для вашего рабочего стола. Это также очень легко. Сначала установите пакет с именем quicksynergy как на рабочем столе, так и на ноутбуке. Он находится в архивах, и вы можете щелкнуть здесь, чтобы установить его.

Запустите Quicksynergy на своем ноутбуке. На вкладке «Поделиться» введите «bambudesktop.local» в верхнем поле и нажмите «Выполнить». Это имя хоста, которое вы выбрали + «.local».

Showing the Network Manager dialog for sharing an interface

Запустите Quicksynergy на вашем ноутбуке. , в «Использовать» -tab есть два поля: сервер и Ник. Сервер - это имя хоста ноутбука, поэтому введите «bambulaptop.local». В качестве имени экрана введите имя хоста десктопов; "Bambudesktop.local". Нажмите «Выполнить».

Теперь ваш рабочий стол подключается к вашему ноутбуку. Ноутбук - это сервер. Это важно помнить, поскольку это может показаться немного странным, хотя для этого есть веские причины. Теперь вы можете перемещать указатель мыши с ноутбука и на экран рабочего стола, перемещая его вверху экрана. Когда указатель мыши находится на рабочем столе, вы можете использовать клавиатуру с ноутбука. Чтобы переместить его обратно на ноутбук, конечно, вы просто тянете его в нижней части экрана рабочего стола. Это похоже на наличие внешнего монитора, подключенного к вашему ноутбуку.

1
задан 12 August 2015 в 01:25

3 ответа

Эта ошибка все еще затрагивала меня и сейчас (Ubuntu 14.04).

Наконец, я нашел решение, которое просто добавляет эту строку 'addn-hosts = / etc / hosts' в конфигурационный файл dnsmasq пакета Newworkmanager .

echo 'addn-hosts=/etc/hosts' > /etc/NetworkManager/dnsmasq.d/etc-hosts
service network-manager restart

Идея заключается в том, что мы добавляем / etc / hosts в качестве дополнительного файла хоста.

Даже если бы я мог найти решение, жестко закодированный вариант ' no-hosts 'в двоичном файле / usr / sbin / NetworkManager разочаровывает меня.

7
ответ дан 25 May 2018 в 13:03

По состоянию на август 2015 года другие ответы устарели.

Простой ответ

Создайте /etc/NetworkManager/dnsmasq.d/hosts.conf. Вставьте строки, подобные address=/whatever/1.2.3.4. См. Документы (ищите --address). Возможны подстановочные знаки: address/.whatever./1.2.3.4. Убейте dnsmasq (ошибка). Перезагрузите его: $ service network-manager restart.
5
ответ дан 25 May 2018 в 13:03

dnsmasq должен автоматически использовать файл /etc/hosts. Это можно отключить с помощью опции командной строки -h или опции конфигурации no-hosts. Я бы не ожидал, что он будет установлен в конфигурации по умолчанию.

Попробуйте заставить dnsmasq перезагрузить файл своих хостов. (Изменения в файле конфигурации требуют перезапуска). Любая из этих команд должна работать.

service dnsmasq reload

kill -HUP $(pidof dnsmasq)

Если вы работаете с системой, в которой указана no-hosts, вы должны использовать опцию addn-hosts, чтобы переопределить ее. Обычно это будет использоваться для чтения дополнительного файла в формате /etc/hosts. Это можно использовать для указания дополнительных данных хоста, которые вы хотите предоставить DNS, но не хотите в вашем файле /etc/hosts. Это можно использовать для управления диспетчером пакетов и связанными с ним инструментами /etc/hosts, в то время как дополнительные данные хостов предоставляются в альтернативном файле.

0
ответ дан 25 May 2018 в 13:03
  • 1
    /etc/dnsmasq.conf имеет все варианты, закомментированные. Перезагрузка не помогает – bakytn 1 April 2012 в 19:34
  • 2
    Я не знаю, что я сделал. похоже, сейчас работает – bakytn 1 April 2012 в 19:51
  • 3
    Почему бы вам ответить на это, когда вы действительно не знаете ответа? Тот факт, что вы «не ожидаете, что он будет установлен в конфигурации по умолчанию», не делает это так, поскольку на самом деле он установлен и жестко закодирован в dnsmasq в NetworkManger. – Justin Buser 26 October 2012 в 03:29
  • 4
    dnsmasq необходимо перезапустить, чтобы загрузить изменения в файлах конфигурации – txwikinger 23 August 2014 в 20:24
  • 5
    @txwikinger Многие файлы параметров перечитываются, когда dnsmasq получают сигнал HUP. Это включает в себя как файлы /etc/hosts, так и /etc/ethers. Время перезапуска достаточно быстрое, что клиенты не смогут получить ответ. – BillThor 24 August 2014 в 22:29

Другие вопросы по тегам:

Похожие вопросы: