How do I play Nightfall/Strike missions solo?

PC

Thanks to /u/depreciated_ on reddit for their solution:

Run the following script in Powershell (run as Administrator):

New-NetFirewallRule -DisplayName "Destiny2-Solo-1" -Direction Outbound -LocalPort 1935,3097,3478-3480 -Protocol TCP -Action Block
New-NetFirewallRule -DisplayName "Destiny2-Solo-2" -Direction Outbound -LocalPort 1935,3097,3478-3480 -Protocol UDP -Action Block
New-NetFirewallRule -DisplayName "Destiny2-Solo-3" -Direction Inbound -LocalPort 1935,3097,3478-3480 -Protocol TCP -Action Block
New-NetFirewallRule -DisplayName "Destiny2-Solo-4" -Direction Inbound -LocalPort 1935,3097,3478-3480 -Protocol UDP -Action Block
Write-Host "Destiny 2 Solo mode activated.  Press ctl + c to deactivate solo mode."

And then run the following when you are done:

Read-Host
Remove-NetFirewallRule -DisplayName "Destiny2-Solo-1" 
Remove-NetFirewallRule -DisplayName "Destiny2-Solo-2" 
Remove-NetFirewallRule -DisplayName "Destiny2-Solo-3" 
Remove-NetFirewallRule -DisplayName "Destiny2-Solo-4"

This will force the game to block specific network ports, preventing other guardians from joining up in your fireteam. Do note as mentioned in his post that the script needs to be run while your ship is fully in orbit, before starting "matchmaking". After a few minutes, the game will automatically start the strike regardless if others join your team (in this case, won't happen), and you'll be free to play any Strikes solo! This applies to both Nightfall strikes, Nightfall: The Ordeal, any strikes in the Vanguard playlists, or Strikes started manually from each planet's map.


PS4

You can set your time back, preferably 1 hour. This prevents others from matching with you, and you can solo strikes this way. Don't forget to switch your system clock back to normal if you want to play with others again.