CommandSamples.ps1

#1) Test-DomainJoinPrereqs

Amaç: Domain join öncesi tüm altyapı gereksinimlerini test eder.

# 1. Detaylı gereksinim testi (önerilen)
Test-DomainJoinPrereqs -DomainName contoso.msft -Credential $cred -Detail Debug -AsCliText

# 2. Çıktıyı değişkene alıp tablolu gösterim
$r = Test-DomainJoinPrereqs -DomainName contoso.msft -Credential $cred -Detail Debug

# DNS SRV kayıtları
$r.SrvRecords | Format-Table Target, Port, Priority, Weight

# TCP port durumları
$r.TcpPorts | Sort-Object Port | Format-Table Port, Success, LatencyMs, Error

# DC seçimi ve naming context
$r.DiscoveredDc
$r.DefaultNamingContext
$r.MachineAccountQuota


# Ne zaman kullanılır: Domain join öncesi DNS, SRV, port, AD obje kotası ve gerekli erişim testleri için.

#2) Test-DomainJoinWorkflow

Amaç: Domain join işlemini baştan sona simüle ederek hangi adımda hata olacağını raporlar.

# 1. Tam debug çıktılı domain join workflow testi
Test-DomainJoinWorkflow -DomainName contoso.msft -ComputerName SRV1 -Credential $cred -Detail Debug -AsCliText

# 2. Çıktıyı değişkene alıp her adımın sonucunu tabloda göster
$r = Test-DomainJoinWorkflow -DomainName contoso.msft -ComputerName SRV1 -Credential $cred -Detail Debug

# Workflow adımlarını ayrıntılı listele
$r.WorkflowSteps | Format-Table StepName, Status, DurationMs, Error

# Kullanılan DC’yi, SPN kayıtlarını ve DNS detaylarını göster
$r.DiscoveredDc
$r.DnsServersTried
$r.SrvQueryUsedServer
$r.SrvRecords


# Ne zaman kullanılır: Domain join başarısız olursa hangi aşamada takıldığını anlamak için.

# 3) Test-DomainJoinFailures

# Amaç: Daha önce başarısız olmuş domain join girişimlerini analiz eder.

# 1. Hataları analiz etme (debug + CLI formatında)
Test-DomainJoinFailures -DomainName contoso.msft -ComputerName SRV1 -Credential $cred -Detail Debug -AsCliText

# 2. Çıktıyı değişkene alıp tablo formatında göster
$r = Test-DomainJoinFailures -DomainName contoso.msft -ComputerName SRV1 -Credential $cred -Detail Debug

# Tüm hata kayıtlarını göster
$r.Failures | Format-Table Timestamp, ErrorCode, Description, SuggestedAction

# Hangi DC’ler ile denendiğini gör
$r.AttemptedDcs | Format-Table DcName, Reachable, LastError