This simulation a demonstration of route injection in a BGP network with 6 AS' - which I demonstrated at CrikeyCon 2018. However, at that time I hadn't been able to extend outside of the VIRL environment so had to browse via wget commands on the server CLI.
Today I had the time to configure my VIRL instance to extend to outside the environment to external devices (in this case a Windows VM).
In retrospect, this wasn't very difficult. But there is very little clear documentation on how to do this. The steps to achieve this were.
1. Configure the flat network under the VIRL Web GUI. Here we specify the IP address range of the external network and the interface on the VIRL VM/machine that we want to link to the external connection. Note down the flat network address.
3. On the VIRL CLI we now find the bridged interface that has been allocated the flat IP Address 172.16.1.254
virl@virl:~$ ifconfig
br1 Link encap:Ethernet HWaddr 00:0c:29:37:1c:0e
inet addr:172.16.1.254 Bcast:172.16.1.255 Mask:255.255.255.0
4. Then make sure eth1 has been associated to the appropriate bridge
virl@virl:~$ brctl show
bridge name bridge id STP enabled interfaces
br1 8000.000c29371c0e no dummy1
eth1
if this isn't the case use the command brctl addif br1 eth1 and check again
5. Add a flat device to your simulation. If connecting to a linux server and wanting to access the rest of the network, make sure you enable routing (ipv4_forward & iptables rules).
6. Ensure the network is configured to use the flat network that you've just setup
7. When the simulation starts you should be able to attach to eth2 however you intend to, and ping/ssh to every device in your simulation (provided you have setup routing within the simulation to enable this)
I wish someone had walked me through this last Feb when I was fairly time poor - but now it's done. I hope it helps someone. Happy simulating!!