Posted to tcl by mookie at Tue Oct 28 18:19:13 GMT 2025view pretty
# Private Adapter
$prv_adapter_id = "10";
$prv_adapter_name = "prv_netbox";
$prv_adapter_desc = "prv_net:${name}";
$prv_adapter_network = "10.0.10.8/24";
$prv_adapter_network_addr = "10.0.10.8";
$prv_adapter_network_route = "10.0.10.3";
# Private Bridge
$prv_bridge_network = "10.0.10.7/24";
$prv_bridge_name = "private";
# Private Interfaces
$prv_epair = "epair${prv_adapter_id}";
$prv_epaira = "epair${prv_adapter_id}a";
$prv_epairb = "epair${prv_adapter_id}b";
vnet.interface += "${prv_epairb}";
##########
## Private Networking Plumbing
# Networking on parent (host)
exec.prestart += "ifconfig ${prv_epair} create up" ;# Create the epair adapter
exec.prestart += "ifconfig ${prv_epaira} up descr ${prv_adapter_desc}" ;# Add description to adapter
exec.prestart += "ifconfig ${prv_epaira} name ${prv_adapter_name}" ;# Rename adapter on parent
exec.prestart += "ifconfig ${prv_bridge_name} addm ${prv_adapter_name}" ;# Add the private adapter to the private bridge in child
# Networking in child (jail)
exec.start += "ifconfig ${prv_epairb} ${prv_adapter_network} up" ;# Add IP
exec.start += "ifconfig ${prv_epairb} name ${prv_adapter_name}" ;# Rename network adapter in child
exec.start += "route add default ${prv_adapter_network_route}" ;# Add defaulkt route
# Bridge in child (jail)
exec.start += "ifconfig bridge create name ${prv_bridge_name}" ;# Set the name of the private bridge
exec.start += "ifconfig ${prv_bridge_name} inet ${prv_bridge_network}" ;# Apply IP to bridge
exec.start += "ifconfig ${prv_bridge_name} addm ${prv_adapter_name}" ;# Add the private adapter to the private bridge in child
# Tidy-up networking
exec.poststop += "ifconfig ${prv_adapter_name} destroy" ;# Remove our adapter from the parent
exec.poststop += "arp -d ${prv_adapter_arp}" ;# Remove our adapter from the arp table