我有一个OpenBSD的防火墙,我必须改变pipe理界面上的IP(包括更改子网/网关),我正在寻找如何远程执行此操作,而不会丢失我的SSH(所以我可以修复一些问题)。
这是我如何能够做到这一点:
添加新的IP作为别名到我的networking接口。 (问题:如何在不同的子网上正确添加一个IP,而不是orignal IP? http://www.openbsd.org/faq/faq6.html#Setup.aliases不清楚是否有任何特殊的事情要做除了指定networking掩码以外的不同子网)
添加具有路由的新网关。 (问题:我应该将其添加为“默认”网关还是仅用于新的子网?)
SSH到新的IP。
写一个脚本,如果新老IP和新的IP,新的IP作为主接口的IP,在这一点上,我绝对需要添加新的网关作为默认的gw权利? 从屏幕内部运行它,以便在networking暂时下降时继续运行。 (问题:这是否应该做这个工作?是否有什么特别的问题需要我留意?关于什么命令可以正确执行这些操作的提示?)
使用tmux或screen打开sleep NSECS && reboot会话sleep NSECS && reboot (NSECS 300通常是相当好,但YMMV) – 这将允许重新访问与以前的设置,如果重新configuration出错。 是的,这是一个中断,但更好。 如果你喜欢在控制台上重新启动警报,你可以使用shutdown -r +min 🙂
在其他shell会话中将别名分配给接口。 没有什么特别的,如果networking不重叠,只需使用适当的掩码(不/ 32)。 然后使用route change default (见手册 )。 实际上,你可以使用一个shell脚本来ping一些远程主机,在没有回声的情况下使route change default old-gw )。 如果新的网关设置不起作用,这将节省您重新启动。
基本就是这样。
PS不要忘记取消重启,如果任务成功。 ;-)不要忘记在configuration中保存新的设置。
我会configuration一个terminal的串行端口,并将其连接到笔记本电脑或其他带外。 从这个入口点进行所有更改。
如果您非常关心中断,我认为您至less有两个运行CARP和相关服务的防火墙。
如果你没有两个,那么当一个磁盘或一个PSU死亡,或者几个月后升级到OpenBSD 5.0时,你将会停机。
使用新的IP地址在box1上编辑相关的/etc/hostname.if(5)和/ etc / mygate。 重新启动box1。 当它回来时,确保一切正常。
如果确定无误,请使用新的IP地址在box2上编辑/etc/hostname.if(5)和/ etc / mygate。 重新启动box2,并确保一切恢复正常。
如果你真的只有一个盒子,用新的IP地址编辑hostname.if和mygate,并在用户最less的时候重新启动。
无论如何,您都需要重新启动系统,以确保正确configurationIP。 如果你等了6个月,而你的改变被打破了,你将不会记得为什么,你可能会花几个小时来解决问题,而不是马上解决问题。