Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Вклинивание своего dns  (Прочитано 1077 раз)

0 Пользователей и 1 Гость просматривают эту тему.

pyromaniac

  • Автор темы
  • Гость
Вклинивание своего dns
« : 20 Апреля 2011, 02:45:04 »
Господа, тут такое дело. В общем, есть задача - написать софтину, типа мини-dns. Эта софтина должна смотреть список директорий в ~/.smth/ и отдавать 127.0.0.1, если кто-то обратился в some_dir_name.dev

Но есть проблемка - я не знаю, как вклиниться в процесс резолвинга. Как работает gethostbyname - я уже себе представляю в общих чертах. Но вот возьмём Ubuntu:

1. У нас есть /etc/resolvconf, в котором лежит скрипт avahi. Но /etc/resolvconf - это директория софтины resolvconf, которая не стоит по дефолту. Тогда откуда там эти файлы? Они как-то задействованы и работают без resolvconf? Или же заработают, когда resolvconf будет установлен?
2. Почему resolvconf не стоит по дефолту? Это связано в политиками безопасности? Или он просто не нужен?
3. Ну и главный вопрос - как можно вклинить свой миниднс сервак так, чтобы ваще никому не мешать? Лучше всего - если это будет делаться как-то скриптом или по сокету. Мне не хочется ломать систему, если, например, стоит bind у пользователя. В resolv.conf тоже писать не хочется: во-первых бинд тот же, а во-вторых, оно генерится nerworkmanagerом и неизвестно, когда перегенерится.

Такие дела. Немного сумбурно, но может кто что дельное подскажет. Спасибо.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28496
    • Просмотр профиля
Re: Вклинивание своего dns
« Ответ #1 : 20 Апреля 2011, 04:45:04 »
Вообще не понимаю.
ЧТО ты хочешь сделать? Конечная цель какая?
А то то ли я читаю как-то непонятно, то ли ты пишешь через зад.
А сумбурно от того, что ты пытаешься либо сделать что-то жутко глупое, либо пытаешься показать товар углом, но не знаешь, какой угол показать, чтобы не спалиться.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн VolCh

  • Активист
  • *
  • Сообщений: 543
    • Просмотр профиля
Re: Вклинивание своего dns
« Ответ #2 : 20 Апреля 2011, 05:54:55 »
Если имеется в виду что-то вроде:
- при обращении к example.com/users/ выдаётся обычный DNS
- при обращении к example.com/users.dev/ выдаётся 127.0.0.1
то никак, разве что на example.com настроить редирект, но в браузере будет 127.0.0.1/users

Оффлайн podkovyrsty

  • Старожил
  • *
  • Сообщений: 1547
  • Content-Type: alternative
    • Просмотр профиля
Re: Вклинивание своего dns
« Ответ #3 : 20 Апреля 2011, 08:57:59 »
Если у тебя уже стоит бинд, то создай там зону .dev и не парься.
Если тебе нужно локально - поставь локально bind, создай там зону .dev и форвардером укажи ваш днс.
bind маленький и легкий.
Шаг за шагом можно достичь цели.

pyromaniac

  • Автор темы
  • Гость
Re: Вклинивание своего dns
« Ответ #4 : 20 Апреля 2011, 08:58:51 »
Нет, ребят. Именно домены надо резолвить. Палиться нечего - я хочу сделать аналог https://github.com/37signals/pow/ для линуха. Этот pow работает под макось, а в макоси есть какой-то резолвер, который позволяет нормально днсить локально. Что из себя представляет pow - это девелопмент сервер для rack приложений(типа рельсы, синатра). У него внутрях рак и днс серверы. Чтобы я мог работать сразу с my_cool_app_name.dev, ну и сабдомены, конечно. Так что ничего страшного я не задумал ) Я свой ) Опенсорс )

Оффлайн podkovyrsty

  • Старожил
  • *
  • Сообщений: 1547
  • Content-Type: alternative
    • Просмотр профиля
Re: Вклинивание своего dns
« Ответ #5 : 20 Апреля 2011, 09:26:35 »
Тоесть ты хочешь сказать, что там внутри не кусок bind-a ?
Шаг за шагом можно достичь цели.

pyromaniac

  • Автор темы
  • Гость
Re: Вклинивание своего dns
« Ответ #6 : 20 Апреля 2011, 09:30:46 »
Тоесть ты хочешь сказать, что там внутри не кусок bind-a ?

https://github.com/37signals/pow/blob/master/lib/dns_server.js
https://github.com/37signals/pow/blob/master/node_modules/ndns/lib/ndns.js

Нет. Я бинд не хотел бы трогать вообще - кто его знает, зачем оно стоит и как сконфигурено.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28496
    • Просмотр профиля
Re: Вклинивание своего dns
« Ответ #7 : 20 Апреля 2011, 09:44:13 »
rndc ?
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

pyromaniac

  • Автор темы
  • Гость
Re: Вклинивание своего dns
« Ответ #8 : 20 Апреля 2011, 10:01:30 »
rndc ?

А если не стоит бинд?

Оффлайн podkovyrsty

  • Старожил
  • *
  • Сообщений: 1547
  • Content-Type: alternative
    • Просмотр профиля
Re: Вклинивание своего dns
« Ответ #9 : 20 Апреля 2011, 10:09:10 »
То сделать записи в /etc/hosts и не парить мозг в принципе.
Или, если хочется радости и счастья, перенаправить на самописный резолвер запросы iptables-ами.
Можно, конечно, пойти долгим путем и сделать службу, которую научить понимать nsswitch - man nsswitch.conf
Шаг за шагом можно достичь цели.

pyromaniac

  • Автор темы
  • Гость
Re: Вклинивание своего dns
« Ответ #10 : 20 Апреля 2011, 11:09:26 »
То сделать записи в /etc/hosts и не парить мозг в принципе.
Или, если хочется радости и счастья, перенаправить на самописный резолвер запросы iptables-ами.
Можно, конечно, пойти долгим путем и сделать службу, которую научить понимать nsswitch - man nsswitch.conf

Вооот! NSS - то, что доктор прописал. Оно ведь по дефолту стоит в убунте?

Оффлайн podkovyrsty

  • Старожил
  • *
  • Сообщений: 1547
  • Content-Type: alternative
    • Просмотр профиля
Re: Вклинивание своего dns
« Ответ #11 : 20 Апреля 2011, 11:16:53 »
И не только.
Шаг за шагом можно достичь цели.

pyromaniac

  • Автор темы
  • Гость
Re: Вклинивание своего dns
« Ответ #12 : 20 Апреля 2011, 17:38:41 »
В общем, спасибо огромное за полезные мысли.

Оффлайн VolCh

  • Активист
  • *
  • Сообщений: 543
    • Просмотр профиля
Re: Вклинивание своего dns
« Ответ #13 : 20 Апреля 2011, 18:22:23 »
(Нажмите, чтобы показать/скрыть)

pyromaniac

  • Автор темы
  • Гость
Re: Вклинивание своего dns
« Ответ #14 : 12 Мая 2011, 20:10:28 »
(Нажмите, чтобы показать/скрыть)

Ну как активна. На данный момент я написал либу для nss и сделал сервак даже (буквально только что пруф оф концепт заработал). Надо оформить хорошенько и залить на гитхаб.

 

Страница сгенерирована за 0.092 секунд. Запросов: 25.