網路和監獄
FreeBSD jails 可以有細粒度的網路配置。預設情況下,每個 jails 使用與主機相同的網路配置。
刪除網路支援
jail -c name="nonetwork" path="/path/to/your/jail" ip4=disable ip6=disable
僅允許 IPv4 網路
jail -c name="onlyipv4" path="/path/to/your/jail" ip4=inherit ip6=disable
僅允許 IPv6 網路
jail -c name="onlyipv6" path="/path/to/your/jail" ip4=disable ip6=inherit
專用網路堆疊(VNET)
VNET
是最近的功能,允許 jail 擁有自己的網路堆疊。執行此配置需要向主機新增路由功能。主機核心需要 VIMAGE
選項。
# starting our own jail with vnet
jail -c name="vnetjail" path="/path/to/your/jail" vnet=new
# we need a bridge...
ifconfig bridge0 create
# a pair of ethernet interface...
ifconfig epair0 create
# and interconnecting epair, jail and bridge
ifconfig epair0b vnet vnetjail
ifconfig bridge0 add epair0a
ifconfig bridge0 add ${your_external_interface}