Problem: samba-tool drs showrepl shows WERR_FILE_NOT_FOUND

Problem:

samba-tool drs showrepl shows WERR_FILE_NOT_FOUND.

==== INBOUND NEIGHBORS ====

DC=DomainDnsZones,DC=schein,DC=ig
Default-First-Site-Name\UCS-BACKUP via RPC
DSA object GUID: 304ed834-2c38-4d75-8ec5-25fd358cd397
Last attempt @ Mon Jul 1 12:34:13 2024 CEST failed, result 2 (WERR_FILE_NOT_FOUND)
874258 consecutive failure(s).
Last success @ Mon Jan 22 20:39:04 2024 CET

==== OUTBOUND NEIGHBORS ====

DC=DomainDnsZones,DC=schein,DC=ig
Default-First-Site-Name\UCS-BACKUP via RPC
DSA object GUID: 304ed834-2c38-4d75-8ec5-25fd358cd397
Last attempt @ Mon Jul 1 12:34:21 2024 CEST failed, result 2 (WERR_FILE_NOT_FOUND)
30 consecutive failure(s).
Last success @ NTTIME(0)

The output of samba-tool drs showrepl is essentially divided into three sections after the header essentially into three sections: INBOUND, OUTBOUND, and KCC connections. The perspective of INBOUND/OUTBOUND refers to the flow of replication data. An error in a connection listed under INBOUND means either that system A could not authenticate itself to system B, or that the DRSUAPI interface on system B cannot be reached, or interface is not accessible on system B, or that there is a problem with the replication of replication of individual objects.

Investigation:

Process to find the root cause:

Step1: Check the samba Database and fix errors/warnings

samba-tool dbcheck --cross-ncs

showed this:

ERROR: Link (forward) mismatch for ‘serverReference’ (1) on ‘CN=UCS-BACKUP,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=schein,DC=ig’ to ‘serverReferenceBL’ (0) on ‘CN=UCS-BACKUP,OU=Domain Controllers,DC=schein,DC=ig’

ERROR: missing backlink attribute ‘serverReferenceBL’ in CN=UCS-BACKUP,OU=Domain Controllers,DC=schein,DC=ig for link serverReference in CN=UCS-BACKUP,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=schein,DC=ig
Not fixing missing backlink serverReferenceBL

NOTE: old (due to rename or delete) DN string component for lastKnownParent in object CN=NTDS Settings\0ADEL:82d1b394-28dc-4bb7-b58d-b5f0454bfef0,CN=UCS-BACKUP\0ADEL:5a
5177af-ce94-4298-83d6-7b8b90438b83,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=schein,DC=ig - CN=UCS-BACKUP,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=schein,DC=ig

samba-tool dbcheck --cross-ncs --fix --yes

restart the service, when finished:

/etc/init.d/samba restart

You should do that on all samba DCs!

Step2: Check logfile for any hints

less /var/log/samba/log.samba

In this case, we did not have any hint of the problem neither on system A (primary) nor on system B (backup)

Step3: Increase the loglevel for the corresponding process

samba-tool processes
 Service:                          PID
--------------------------------------
cldap_server                     22107
dnsupdate                        22126
dreplsrv                         22111
kccsrv                           22123
kdc_server                       22109
kdc_server(worker 3)             22136
kdc_server(worker 0)             22117
kdc_server(worker 1)             22127
kdc_server(worker 2)             22133
ldap_server                      22104
ldap_server(worker 1)            22157
ldap_server(worker 2)            22159
ldap_server(worker 0)            22155
ldap_server(worker 3)            22162
notify-daemon                    22188
rpc_server                       22099
rpc_server(worker 2)             22137
rpc_server(worker 0)             22122
rpc_server(worker 1)             22131
rpc_server(worker 3)             22139
samba                            22085
winbind_server                   22129
wrepl_server                     22102

shows lots of services, we need for the drs replication the dreplsrv 22111 service with its pid.

smbcontrol 22111 debuglevel

shows the curren debug level. We need this to reset to this later

smbcontrol 22111 debug 5

Debug 5 should be sufficient you can go up to 10, but this is really much stuff you will get.
And here it comes:

[2024/07/03 11:19:18.038719, 3, pid=3387] …/…/source4/libcli/resolve/dns_ex.c:502(pipe_handler)
dns child failed to find name ‘82d1b394-28dc-4bb7-b58d-b5f0454bfef0._msdcs.schein.ig’ of type A
[2024/07/03 11:19:18.038929, 5, pid=3387] …/…/source4/dsdb/repl/drepl_notify.c:199(dreplsrv_notify_op_callback)
dreplsrv_notify_op_callback: dreplsrv_notify: Failed to send DsReplicaSync to 304ed834-2c38-4d75-8ec5-25fd358cd397._msdcs.schein.ig for DC=DomainDnsZones,DC=schein,DC=ig - NT_STATUS_OBJECT_NAME_NOT_FOUND : WERR_FILE_NOT_FOUND

Step4:

Search for the mentioned “object” 82d1b394-28dc-4bb7-b58d-b5f0454bfef0

Use your base here to get all entries and search for the string:

univention-s4search -b DC=schein,DC=ig--cross-ncs --show-binary --show-deleted|less

We got two deleted objects

Solution:

Simple as always:

root@primary:~ # ldbdel -H /var/lib/samba/private/sam.ldb 'CN=NTDS Settings\0ADEL:82d1b394-28dc-4bb7-b58d-b5f0454bfef0,CN=UCS-BACKUP\0ADEL:5a5177af-ce94-4298-83d6-7b8b90438b83,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=schein,DC=ig' --relax
root@primary:~ # ldbdel -H /var/lib/samba/private/sam.ldb 'dc=82d1b394-28dc-4bb7-b58d-b5f0454bfef0\0ADEL:132603a0-d7bf-4f67-a700-65e3237adbed,CN=Deleted Objects,DC=ForestDnsZones,DC=schein,DC=ig' --relax

root@primary:~ # /etc/init.d/bind9 restart
root@primary:~ # /etc/init.d/samba restart

For other solutions to this problem see:

1 Like
Mastodon