5.7.6. 手动的可切换网络配置
以下是如何在几个网络配置中进行手动切换,而无需像 第 5.6.13 节 “网络重新配置基础” 中那样重写 “/etc/network/interfaces
” 文件。
对于你需要访问的所有网络配置,你需要在 “/etc/network/interfaces
” 文件中像下面那样创建一个单独的节。
auto lo
iface lo inet loopback
iface config1 inet dhcp
iface config2 inet static
address 192.168.11.100
netmask 255.255.255.0
gateway 192.168.11.1
dns-domain example.com
dns-nameservers 192.168.11.1
iface pppoe inet manual
pre-up /sbin/ifconfig eth0 up
up ifup ppp0=dsl
down ifdown ppp0=dsl
post-down /sbin/ifconfig eth0 down
# The following is used internally only
iface dsl inet ppp
provider dsl-provider
iface pots inet ppp
provider provider
请注意,iface
后面标识的 网络配置名称 不用于标识 网络接口名称。另外,也没有 auto
或 allow-hotplug
节来根据事件自动启动网络接口 eth0
。
现在,你可以切换网络配置了。
让我们通过 DHCP 将你的 PC 移动到局域网。你可以通过下列命令开启由网络配置名称(逻辑接口名称)config1
指定的网络接口(物理接口) eth0
。
$ sudo ifup eth0=config1
Password:
...
eth0
接口已开启,由 DHCP 配置并连接到了局域网。
$ sudo ifdown eth0=config1
...
eth0
接口已关闭并断开局域网连接。
让我们通过静态 IP 使你的 PC 移动到局域网。你可以通过下列命令开启由网络配置名称 config2
指定的网络接口 eth0
。
$ sudo ifup eth0=config2
...
开启 eth0
接口,使用静态 IP 配置并连接到局域网。像 dns-*
这样的额外参数会配置 “/etc/resolv.conf
” 的内容。如果安装了 resolvconf
,“/etc/resolv.conf
” 会更容易管理。
$ sudo ifdown eth0=config2
...
eth0
接口再次关闭并断开局域网连接。
让我们将你的 PC 移动到 PPPoE 服务器的 BB-modem 上的一个端口。你可以通过下列命令开启由网络配置名称 pppoe
指定的网络接口 eth0
。
$ sudo ifup eth0=pppoe
...
eth0
接口已开启,由 PPPoE 配置直接连接到 ISP。
$ sudo ifdown eth0=pppoe
...
eth0
接口再次关闭并断开连接。
让我们将你的 PC 移动到使用 POTS 和 modem 的位置,而非局域网或 BB-modem。你可以通过下列命令开启由网络配置名称 ppp0
指定的网络接口 eth0
。
$ sudo ifup ppp0=pots
...
开启 ppp0
接口,并使用 PPP 连接到互联网。
$ sudo ifdown ppp0=pots
...
关闭 ppp0
接口并断开网络。
你应该检查 “/etc/network/run/ifstate
” 文件,查看ifupdown
系统当前网络配置的状态。
警告 | |
---|---|
如果你有多个网络接口,你可能需要调整 |