# Made by Alexandre SIMAO # GPLv3 # Script to install and configure a Fuckdows Server 2016 as a router # RTR-03 Only # Script done echo "Shamefully made by Alexandre Simao. Pardon-me M. Stallman" ### Change the poor machine name echo "Renaming Computer as RTR-03" Rename-computer RTR-03 echo "Done!" #END ### Rename Adapters by parsing the VM device name echo "Renaming adapter" $adapts = Get-NetAdapter foreach ($adapt in $adapts) { $HVName = (Get-NetAdapterAdvancedProperty -name $adapt.name -DisplayName "Hyper-v Network Adapter Name").DisplayValue Rename-Netadapter -name $adapt.name -NewName $HVName } echo "Done!" #End ### Pausing to let things settle echo "Sleeping 10s" Sleep 10 echo "Done!" #WAN IP conf echo "IP configuration via netsh" netsh interface ip set address name="WAN" static 192.168.255.254 255.255.255.0 echo "Done!" #Aston echo "Setting Aston interface as DHCP to be sure" netsh interface ip set address name="Aston" DHCP echo "Done!" #END ### DNS Conf for all InterfaceAlias echo "Setting 192.168.8.1 as default DNS on all interfaces" foreach ($c in Get-NetAdapter) { write-host 'Setting DNS for' $c.interfaceName ; Set-DnsClientServerAddress -InterfaceIndex $c.interfaceindex -ServerAddresses ('192.168.8.1') } echo "Done!" #End ### Install Routing and necessary linked roles #echo "installing Routing and Nat role+setting autostart" Install-windowsFeature -Name Routing -IncludemanagementTools Install-remoteAccess -VpnType Routingonly set-service RemoteAccess -StartupType Automatic Start-Service RemoteAccess echo "Done!" # Configure NAT echo "Activating and configuring NAT" netsh routing ip nat install netsh routing ip nat add interface name="WAN" mode=Private netsh routing ip nat add interface name="Aston" mode=FULL echo "Done!" ### Change ZoneAlarm rule to accept incoming ICMP ipv4 probes ### echo "changing firewall rule to accept ICMP probes" Get-NetFirewallRule -name "*ICMP4-ERQ-In*" |Enable-NetFirewallRule echo "Done!" #END ### Set connection as Private echo "Setting connection as private" Get-NetAdapter | Set-NetConnectionProfile -NetworkCategory Private echo "Done!" #End # Add routes echo "Adding routes" route add -p 192.168.8.0/24 192.168.255.8 route add -p 192.168.12.0/24 192.168.255.8 route add -p 192.168.128.0/24 192.168.255.128 route add -p 0.0.0.0/0 192.168.255.254 echo "Done!" # Renewing DHCP lease echo "Renew DHCP Lease to be sure" ipconfig /renew #reboot Read-Host "Press enter to reboot" Restart-Computer