Windows DNS: 서브넷을 기반으로 도메인을 분할하는 방법이 있습니까?

Windows DNS: 서브넷을 기반으로 도메인을 분할하는 방법이 있습니까?

우리 조직에는 네트워크 주소 공간과 도메인을 공유하는 두 개의 별도 그룹이 있습니다. /24의 두 조각은 내 그룹에 할당되고 나머지는 내부 IT 팀에 할당됩니다.

우리는 파이 조각에 대해 DNS를 관리할 수 있기를 바라지 않지만 우리 조각에 대해서는 DNS를 관리할 수 있어야 합니다.

문제는 제가 재직하기 전의 정치적/역사적 이유로 Linux 기반 DNS 서버를 설정하고 자체 기록을 유지하며 모든 서버와 장비를 이 서버에 연결했다는 것입니다. 그 사이 조직 전체의 사용자와 개발자는 IT 팀의 DNS 서버를 가리킵니다.

모든 상황에서 모든 것이 제대로 작동하는지 확인하려면 서버에 DNS 레코드를 입력한 다음 IT 팀에 티켓을 넣어 Active Directory 환경에서 레코드가 생성되도록 해야 합니다. 이는 패리티에서 벗어났으며 관리상의 악몽입니다.

게다가 우리는 공유를 사용하는 수백 개의 서버와 애플리케이션을 보유하고 있으며 수백 개의 서버와 애플리케이션을 domain.com만들고 업데이트해야 하는 것은 바람직하지 않습니다.subdomain.domain.com

따라서 domain.com/16 내부의 소수의 /24에 대해서만 레코드를 업데이트할 수 있는 신뢰와 권한을 부여하는 방법이 있습니까? Active Directory에 추가되는 타사 솔루션도 허용됩니다.

답변1

내가 이것을 잘못 읽었을 수도 있지만, 하루에 한두 번 실행하도록 예약된 작업이 작동할 것 같습니다.

  • DNS 레코드 읽기
  • 레코드 IP 주소가 기준과 일치하는 경우
  • 주소를 관리하는 보안 그룹의 ACE에 대한 보안 ACL을 검사합니다.
  • ACE가 없으면 추가합니다.

영역에 액세스하고 업데이트를 수행하는 방법에 대한 코드 예는 다음과 같습니다.

http://www.adamtheautomator.com/fix-dynamic-dns-record-permissions-automagically/

해당 코드는 분리된 동적 DNS 레코드를 수정하는 것이지만 올바른 방향을 알려주어야 합니다.

답변2

관리와 관련하여 DNS가 서브넷에 신경 쓰지 않는다는 사실을 이미 알고 계실 것입니다. DNS 인프라의 일반적인 관리 단위는 하나 이상의 도메인에 해당하는 "영역"입니다. 따라서 관리 작업을 위임하려면 전체 영역, 즉 최소한 전체 도메인에 대한 관리를 위임해야 합니다.

Windows AD DNS 서버는 단일 레코드 항목에 대해 몇 가지 추가 액세스 제어 및 위임 기능을 제공합니다. 즉, 전체 영역 관리를 위임하지 않고도 영역 내의 모든 단일 레코드에 대해 특정 사용자 또는 그룹에 대한 "수정" 권한을 설정할 수 있습니다. 그러나 위임 및 ACL 기능에는 관리 단위로 "서브넷"과 같은 것이 포함되어 있지 않습니다. 이를 ACE에 반영해야 하는 경우 외부에서 수정해야 합니다.

즉, Windows DNS ACL에는 권한이 필요 없이 영역에서 새 레코드 생성만 위임할 수 있는 기능과 함께 레코드의 "작성자" 개념도 있으므로 들리는 것만큼 나쁘지는 않을 것입니다. 다른 영역별 데이터나 기타 기록을 변경합니다. "작성자"는 레코드의 소유자가 되며 묵시적으로 해당 권한을 변경할 수 있는 권한을 얻습니다. 따라서 간접적으로 "완전한 제어"를 얻습니다. 또한 원하는 경우 새 레코드 생성 시 상속될 "CREATOR-OWNER"에 대한 ACE를 컨테이너에 명시적으로 정의할 수 있습니다(그러나 권한을 변경할 수 있는 암시적 권한은 취소할 수 없습니다). 따라서 기본 프로젝트 개요는 다음과 같습니다.

  • 그룹의 영역에 있는 새 레코드에 대한 생성 권한을 AD DNS 팀에 문의하세요.
  • AD DNS 팀에 그룹에 속한 리소스 레코드에 대한 수정 권한을 위임하도록 요청하세요.
  • AD DNS에서 그룹에 대한 리소스 레코드를 직접 생성하고 수정하기 시작합니다.
  • 그룹에서 생성한 기록이 위임 정책을 준수하는지 확인하는 자주 실행되는 관리 스크립트 생성을 제안합니다(예: 도메인의 호스트를 가리킴).
  • 단순히 쿼리를 AD DNS 서버에 전달하거나 AD DNS 기본 서버 중 하나에서 영역의 데이터를 가져와 보조 역할을 하도록 Linux DNS 서버를 재구성합니다(DNS 영역이 AD에 통합된 경우 모든 AD DNS 서버는 예비 선거로 활동)

답변3

.nsupdate

내가 무엇을~할 수 있다NS개별 레코드에 대해 서로에게 위임을 사용하고 팀에서 관리하지 않는 데이터에 대해 정적 A또는 레코드를 정의하지 않으면 골치 아픈 일을 어느 정도 줄일 수 있다는 것입니다 .CNAME

Active Directory에 다음이 있다고 가정해 보세요.

example.com. SOA dc1.example.com. hostmaster.example.com. 2015022400 28800 7200 604800 300
     IN NS dc1.example.com.
     IN NS dc2.example.com.
     IN MX 10 mail.example.com.
www  IN NS ns1
ftp  IN NS ns1
mail IN  A 198.18.0.10

dc1  IN  A 198.18.0.150
ns1  IN  A 198.18.0.250
  • mail, ns1dc1는 정적으로 정의된 레코드입니다.
  • www그리고 권한 있는 Linux DNS 서버인 ftp에 위임되었습니다 .ns1.example.com.
  • DC는 일반적으로 혼합된 DNS 서버 역할(재귀 및 권한 모두)으로 작동하기 때문에 요청 wwwftp재귀를 트리거하고 ns1.example.com답변을 참조하게 됩니다. DC의 트래픽이 에 도달하도록 허용하는 방화벽이 있는 경우 이 작업은 성공합니다 ns1.

이는 여전히 고통스러운 일입니다. 원격 서버에서 레코드를 정의해야 하는 필요성을 피할 수는 없습니다. 당신은 무엇을~이다성취는 개인 기록의 소유권입니다. 해당 레코드 중 하나의 IP 주소를 변경해야 하는 경우 펜스 양쪽에서 이 변경을 수행할 필요는 없습니다. 적어도 누군가가 sub.ftp.example.comDC에서 정의하기를 원할 때까지는 작동합니다 . ftp위임되었으므로 위임 sub.ftp되었으며 로컬에서 관리할 수 있는 방법이 없습니다.

관련 정보