97 lines
2.2 KiB
PowerShell
97 lines
2.2 KiB
PowerShell
# SYS265 - DHCP Lab
|
|
# 1/31/25
|
|
|
|
# Get Username
|
|
function get_username(){
|
|
Write-Host 'Username:'$env:USERNAME
|
|
}
|
|
|
|
# Get IP Address
|
|
function get_ip(){
|
|
$ip_address = (Get-NetIPAddress -AddressFamily IPv4 | Select IPv4Address | Where-Object { $_.IPv4Address -ne "127.0.0.1" } | Format-Table -HideTableHeaders | Out-String).Trim()
|
|
Write-Host 'IP Address:'$ip_address
|
|
}
|
|
|
|
# Get DHCP Server Address
|
|
function get_dhcp(){
|
|
$dhcp_address = (Get-CimInstance Win32_NetworkAdapterConfiguration | Select DHCPServer | Format-Table -HideTableHeaders | Out-String).Trim()
|
|
Write-Host 'DHCP Server:'$dhcp_address
|
|
$dhcp_lease = (Get-CimInstance Win32_NetworkAdapterConfiguration | Select DHCPLeaseExpires | Format-Table -HideTableHeaders | Out-String).Trim()
|
|
Write-Host 'Lease Expiration:'$dhcp_lease
|
|
}
|
|
|
|
# Get Gateway IP
|
|
function get_gateway(){
|
|
$gateway_address = (Get-CimInstance Win32_NetworkAdapterConfiguration | Select DefaultIPGateway | Format-Table -HideTableHeaders | Out-String).Trim()
|
|
Write-Host 'Default Gateway:'$gateway_address
|
|
}
|
|
|
|
# Get DNS Server IP
|
|
function get_dns(){
|
|
$dns_address = ((Get-DnsClientServerAddress -AddressFamily IPv4 | Where-Object { $_.InterfaceAlias -ne "loopback" }).ServerAddresses | Out-String).Trim()
|
|
Write-Host 'DNS Server:'$dns_address
|
|
}
|
|
|
|
|
|
clear
|
|
|
|
$Prompt = "`nChoose number for operation`n"
|
|
$Prompt += "1. All`n"
|
|
$Prompt += "2. Username`n"
|
|
$Prompt += "3. IP`n"
|
|
$Prompt += "4. DHCP`n"
|
|
$Prompt += "5. Default Gateway`n"
|
|
$Prompt += "6. DNS`n"
|
|
$Prompt += "7. exit"
|
|
|
|
$operation = $true
|
|
|
|
while($operation){
|
|
Write-Host $Prompt | Out-String
|
|
$choice = Read-Host
|
|
Write-Host "----------"
|
|
|
|
if($choice -eq 1){
|
|
get_username
|
|
get_ip
|
|
get_dhcp
|
|
get_gateway
|
|
get_dns
|
|
}
|
|
|
|
elseif($choice -eq 2){
|
|
get_username
|
|
}
|
|
|
|
|
|
elseif($choice -eq 3){
|
|
get_ip
|
|
}
|
|
|
|
|
|
elseif($choice -eq 4){
|
|
get_dhcp
|
|
}
|
|
|
|
elseif($choice -eq 5){
|
|
get_gateway
|
|
}
|
|
|
|
elseif($choice -eq 6){
|
|
get_dns
|
|
}
|
|
|
|
elseif($choice -eq 7){
|
|
Write-Host "Goodbye" | Out-String
|
|
exit
|
|
$operation = $false
|
|
}
|
|
|
|
else{
|
|
Write-Host "Invalid Input" | Out-String
|
|
}
|
|
|
|
Write-Host "----------"
|
|
|
|
}
|
|
|