一时兴起,剁手了一个sys的机器,安装费好贵。。。

图的就是他可以购买IP,而kimsufi不能……

机器开通以后,系统什么的不多说了,购买IP也很简单。

购买的时候有单个IP和IP块的区别,我因为没什么实际应用,所以买的是单个,然后有点曲折。。。

 

首先附加的IP直接设置给虚拟机,掩码为/24,网关设置为网段的254,好像ovh所有网络都是这么设置的。按我推测是不能成功的,事实上也是如此。

然后增加了个虚拟mac并且绑给虚拟机的网卡,依然不行,这就让我感觉意外了,然后去网上搜一下,能搜到的文章都是说给宿主机增加IP的方法,而没有虚拟机的……

官方文档要求给虚拟机设置的话必须是购买IP块,而我本身只是玩玩看的,我犯不着去买一堆IP闲置。

按官方的意思去理解,他是构成一个虚拟机架,或者虚拟网关,把IP块里的倒数第二个地址抽出来绑到ovh的设备上作为网关,然后其他几个非网络非广播的Ip留给客户,这思路没毛病,但是tmd单个IP咋整……

 

然后我就开始推测。我虽然没测试,但我认为放在物理机上是肯定行的,否则买这IP有毛用?那么宿主机与虚拟机的网络环境区别是啥?一个是mac地址,一个是我不太确定掩码和网关是谁。理论上,宿主机的网卡和虚拟机是处于同一个“虚拟网桥”上,而网桥可以视为一个交换机。

从文档可知掩码是/32,这样的话就是个孤门绝户的IP,这一点把我搞晕了。不过我也见过欧洲企业设置的IP和网关不在相同子网,于是试试看吧。

首先设置附加IP自己的254网关,不行。。。

然后我想了下,如果绑到宿主机的话,则实际上这个附加IP的数据是通过宿主机的网关进行转发的,那么OVH的设备上应该不会拒绝这个IP,于是设置成宿主机的网关,成了……

 

 

最终总结方法如下:

1,要让虚拟机用上单个公网IP,就必须添加虚拟mac;如果给宿主机用的话,则不能添加虚拟mac。

2,将虚拟mac绑到虚拟机的网卡上

3,虚拟机的IP掩码设置为/32,也就是255.255.255.255,网关设置为宿主机的网关,如果是windows会提示这样不正确,不理会,强行设置。

 

成功了以后回想这个事,说一些可能没多大用的废话吧。

掩码是用来确认子网范围的,一个标准的/24的C段IPV4有256个地址,0作为网络地址,255作为广播地址,这两个特殊地址是固定的。而中间的254个地址都是可用的,但是因为和其他网段不处于相同子网,所以无法通信,于是就需要抽出来一个绑到路由器上,用来在不同网段之间通信。

于是一个延伸知识点。交换机工作在2和3层,这是常态,当然也有7层交换机,但这种强行附加功能的做法没多大讨论的意义,就像intel早些年的“胶水双核”一样的野路子。而路由器工作在3和4层。交换机的功能就是存储转发,路由器的功能是存储转发+跨网段通信。比如两个不同子网要通信,就需要一个路由器分别绑上两个网段的IP,然后设置路由表进行转发。当然放到现在这也只是抽象的概念,现实中一个软路由或者绝大多数操作系统都可以变身成路由器,现在的硬件情况来说,早已超过专用路由器的性能了。

这些年见过的奇葩事还是有点多的,我遇到过不止一个欧洲企业搞的客户机IP和网关不在相同网段,虽然也能用,但总感觉很奇怪……

回到OVH这里来说,据我观察+推测,他的网关设备应该是做了mac绑定和过滤,所以才单独整出来那个虚拟mac的事,这本身不是坏事,因为这样做可以防范arp攻击、数据监听这类事情。然后附加的IP,我估计默认情况下的规则是与宿主机的网卡MAC绑了,所以要在不同mac用就需要多几步操作,但我不太明白,为啥文档里非要说只有IP块才能给虚拟机用……

于是这里就又有一个成本问题,我们知道IP块是一定有至少2个IP不能用,绝大多数情况下弄个网关的话实际上有3个不能用,于是买一个/30的块,实际可用的只有1个IP,那这个就不划算了,我觉得不论买多大的块都不划算。所以考虑经济问题的话,还是要买单IP靠谱  

作者 听涛

发表评论

您的电子邮箱地址不会被公开。