A exclusão da rota padrão deve fazer isso. Você pode mostrar a tabela de roteamento com /sbin/route
e excluir o padrão com:
sudo /sbin/route del default
Isso deixará seu sistema conectado à rede local, mas não tem idéia de para onde enviar os pacotes destinados para além. Isso provavelmente simula a situação "sem acesso externo" com muita precisão.
Você pode colocá-lo de volta com route add
(lembrando-se de que seu gateway deveria estar) ou simplesmente reiniciando a rede. Eu apenas tentei em um sistema com NetworkManager, e zapping o padrão funcionou bem, e eu poderia restaurá-lo simplesmente clicando no ícone do painel e re-escolhendo a rede local. É possível que o NM faça isso sozinho em outros eventos, então fique atento.
Outra abordagem seria usar uma regra iptables
para bloquear o tráfego de saída. Mas acho que a abordagem de roteamento é provavelmente melhor.