Domain’e join olmadaki sorunu çözmek için şu adımları takip edelim:
- İlk olarak ping testi yapalım:
- İlk olarak ping testi yapalım:
ping domain.com
ipconfig /all
2. DNS çözümlemesini kontrol edelim:
nslookup domain.com
3. Domain Controller’a direkt bağlantıyı test edelim:
nltest /dsgetdc:domain.com
4. Ağ kimlik bilgilerini temizleyelim:
klist purge
5. Alternatif join komutu deneyelim:
powershell Add-Computer -DomainName domain.com -Credential (Get-Credential) -Restart -Force
6. Bilgisayar adının DNS standartlarına uygun olduğundan emin olalım:
hostname
7.Zamanı kontrol edin:
w32tm /query /status
Güvenlik duvarı kontrolleri:
netsh advfirewall show allprofiles
- Gerekirse domain join için gereken portları açın:
— TCP/UDP 53 (DNS)
— TCP/UDP 88 (Kerberos)
— TCP 389 (LDAP)
— TCP/UDP 445 (SMB) - Gerekirse domain join için gereken portları açın:
— TCP/UDP 53 (DNS)
— TCP/UDP 88 (Kerberos)
— TCP 389 (LDAP)
— TCP/UDP 445 (SMB)
PowerShell ile iligli portları açmak için aşağıdaki komutları kullanabilirsiniz:
# DNS (TCP ve UDP port 53)
New-NetFirewallRule -DisplayName “Allow DNS TCP” -Direction Inbound -Protocol TCP -LocalPort 53 -Action Allow
New-NetFirewallRule -DisplayName “Allow DNS UDP” -Direction Inbound -Protocol UDP -LocalPort 53 -Action Allow
# Kerberos (TCP ve UDP port 88)
New-NetFirewallRule -DisplayName “Allow Kerberos TCP” -Direction Inbound -Protocol TCP -LocalPort 88 -Action Allow
New-NetFirewallRule -DisplayName “Allow Kerberos UDP” -Direction Inbound -Protocol UDP -LocalPort 88 -Action Allow
# LDAP (TCP port 389)
New-NetFirewallRule -DisplayName “Allow LDAP TCP” -Direction Inbound -Protocol TCP -LocalPort 389 -Action Allow
# SMB (TCP ve UDP port 445)
New-NetFirewallRule -DisplayName “Allow SMB TCP” -Direction Inbound -Protocol TCP -LocalPort 445 -Action Allow
New-NetFirewallRule -DisplayName “Allow SMB UDP” -Direction Inbound -Protocol UDP -LocalPort 445 -Action Allow# DNS (TCP ve UDP port 53)
New-NetFirewallRule -DisplayName “Allow DNS TCP” -Direction Inbound -Protocol TCP -LocalPort 53 -Action Allow
New-NetFirewallRule -DisplayName “Allow DNS UDP” -Direction Inbound -Protocol UDP -LocalPort 53 -Action Allow
# Kerberos (TCP ve UDP port 88)
New-NetFirewallRule -DisplayName “Allow Kerberos TCP” -Direction Inbound -Protocol TCP -LocalPort 88 -Action Allow
New-NetFirewallRule -DisplayName “Allow Kerberos UDP” -Direction Inbound -Protocol UDP -LocalPort 88 -Action Allow
# LDAP (TCP port 389)
New-NetFirewallRule -DisplayName “Allow LDAP TCP” -Direction Inbound -Protocol TCP -LocalPort 389 -Action Allow
# SMB (TCP ve UDP port 445)
New-NetFirewallRule -DisplayName “Allow SMB TCP” -Direction Inbound -Protocol TCP -LocalPort 445 -Action Allow
New-NetFirewallRule -DisplayName “Allow SMB UDP” -Direction Inbound -Protocol UDP -LocalPort 445 -Action Allow
Get-NetFirewallRule | Where-Object {$_.DisplayName -like “*Allow*”} | Format-Table DisplayName, Enabled, Direction, Action
Kuralları kontrol etmek için:
Get-NetFirewallRule | Where-Object {$_.DisplayName -like “*Allow*”} | Format-Table DisplayName, Enabled, Direction, Action
Belirli bir portu kontrol etmek için:
Get-NetFirewallPortFilter | Where-Object {$_.LocalPort -eq “53”}
Eğer tüm bu kuralları tek seferde kaldırmak isterseniz:
Get-NetFirewallRule | Where-Object {$_.DisplayName -like “*Allow*”} | Remove-NetFirewallRule
Alternatif komut ile domaine almayı deneyin:
netdom join %computername% /domain:domain.com /userD:admin@domain.com /passwordD:*
RPC (Remote Procedure Call) servisine ulaşılamadığında, durumu çözmek için şu adımları uygulayalım:
1. RPC servisini kontrol edelim:
Get-Service RpcSs | Select-Object Name, Status
Start-Service RpcSs
2. RPC ile ilgili diğer önemli servisleri kontrol edelim:
$services = @(
‘RpcSs’, # Remote Procedure Call
‘RpcEptMapper’, # RPC Endpoint Mapper
‘DcomLaunch’ # DCOM Server Process Launcher
)
Get-Service -Name $services | Select-Object Name, Status
3. RPC portlarını açalım:
4. Domain Controller’a RPC bağlantısını test edelim:
Test-NetConnection -ComputerName domain.com -Port 135
5. Network bağlantısının tam testi:
$domainController = “domain.com”
$ports = @(135, 389, 445, 88, 53)
foreach ($port in $ports) {
Write-Host “Testing port $port…”
Test-NetConnection -ComputerName $domainController -Port $port
}
6. RPC servisini yeniden başlatalım:
Restart-Service RpcSs -Force
Restart-Service RpcEptMapper -Force
7. Netlogon servisini yeniden başlatalım:
Restart-Service Netlogon -Force
Bu adımları uyguladıktan sonra tekrar domain’e join olmayı deneyebilirsiniz:
$cred = Get-Credential “DOMAIN\admin”
Add-Computer -DomainName “domain.com” -Credential $cred -Force -Restart