Назад | Перейти на главную страницу

DNS-сервер на базе Mac?

Можно ли вернуть другой IP-адрес для одного и того же домена на основе Mac (или любого другого) клиента?

Например, у меня есть dynamic.test домен, используемый в локальной сети, когда userA запрашивает IP-адрес dynamic.test, DNS-сервер должен вернуть предварительно определенный IP-адрес, предоставленный userA, и когда userB запросов, DNS-сервер должен вернуть IP, определенный userB.

Процесс выглядит примерно так:

[userA] # dns-register dynamic.test 10.0.0.100
[userB] # dns-register dynamic.test 10.0.0.101
[userA] # nslookup dynamic.test #==> should give 10.0.0.100
[userB] # nslookup dynamic.test #==> should give 10.0.0.101
[userA] # dns-register dynamic.test 10.0.0.103
[userA] # nslookup dynamic.test #==> should give 10.0.0.103

dns-register это пример инструмента, предоставленный THE DNS server

Возможно, не напрямую, но в сочетании с DHCP это возможно. Первый шаг - настроить DHCP для двух (или более) пулов, они могут находиться в одной подсети и добавить статическое резервирование из одного пула для известных MAC-адресов.

Второй шаг - настроить DNS-сервер, который поддерживает views, например BIND, view соответствовать клиенту по IP-адресу подсети и может возвращать разные значения для разных клиентов. Пример view Пункт от Pro DNS и BIND:

view "trusted" {
 match-clients { 192.168.23.0/24; }; // our network
  recursion yes;
  // other view statements as required
  zone "example.com" {
   type master;
   // private zone file including local hosts
   file "internal/master.example.com";
  };
  // add required zones
 };
view "badguys" {
 match-clients {"any"; }; // all other hosts
 // recursion not supported
 recursion no;
 // other view statements as required
 zone "example.com" {
   type master;
   // public only hosts
   file "external/master.example.com";
  };
  // add required zones
 };