# Alexandre SIMAO # GPLv3 # Script to install and configure a Fuckdows Server 2016 as a router # RTR-01 Only # Change the poor machine name echo "Shamefully made by Alexandre Simao. Pardon-me M. Stallman" Rename-computer RTR-01 $adapter = Get-NetAdapter | ? {$_.MacAddress -eq "00-15-5D-02-70-00"} Rename-NetAdapter -Name "Eth*" -NewName "Arc-SRV" #Arc-SRV $IP = "192.168.8.1" $MaskBits = 24 # This means subnet mask = 255.255.255.0 $Gateway = "192.168.8.254" $Dns = "9.9.9.9" $IPType = "IPv4" $adapter | New-NetIPAddress ` -AddressFamily $IPType ` -IPAddress $IP ` -PrefixLength $MaskBits ` -DefaultGateway $Gateway # Install Routing and necessary linked roles Install-WindowsFeature RemoteAccess, RSAT-RemoteAccess-PowerShell, Routing -IncludeManagementTools #Install-remoteAccess -VpnType Vpn Set-NetConnectionProfile -NetworkCategory Private $Params = @{ "Name" = 'vm-monitoring-icmpv4' "Action" = 'Allow' } Set-NetFirewallRule @Params # Activate NAT and DHCP Relay netsh routing ip relay install netsh routing ip add interface name="WAN" state=enable netsh routing ip relay add interface "WAN" netsh rout ip rel set int ARC-CLI min=0 netsh routing ip relay add interface "Arc-CLI" netsh rout ip rel set int ARC-SRV min=0 netsh routing ip relay add interface "Arc-SRV" netsh rout ip rel set int WAN min=0 netsh routing ip relay add dhcpserver 192.168.8.1 set-service RemoteAccess -StartupType Automatic Start-Service RemoteAccess netsh -f ./Arc-CLI.conf netsh -f ./Arc-SRV.conf netsh -f ./WAN.conf Set-NetConnectionProfile -networkcategory private # Change ZoneAlarm rule to accept incoming ICMP ipv4 probes $Params = @{ "Name" = 'vm-monitoring-icmpv4' "Action" = 'Allow' } Set-NetFirewallRule @Params # Add routes route add -p 192.168.8.0/24 192.168.8.254 route add -p 192.168.12.0.24 192.168.12.254 route add -p 192.168.255.0/24 192.168.255.8 route add -p 192.168.128.8/24 192.168.255.128 route add -p 0.0.0.0/0 192.168.255.254