一.介绍
Hetzner一直以来是以卖性价比比较高的德国机器著名的,最近出了新的芬兰机房,推出了比以往更具有吸引力的机型,我也忍不住买了台,打算买几个IP给自己开机器玩,不过,在折腾的过程中,发现了一些坑,于是在全部解决后来分享下自己的经验。
二.问题
如果是个人开VPS我还是推荐Proxmox,因为使用起来方便,而且功能也比较全,但是,由于Hetzner的特殊,导致了一些问题的出现
- Hetzner在系统模板处没有Proxmox
- 在解决第一个问题后发现Hetnzer的Proxmox网卡配置不正确
- 在解决第二个问题后发现Hetzner的IP无法直接使用
另外,希望你看到这篇文章的时候还没买IP,特别是别买IP段(subnet),因为Hetzner的机房网络启用了MAC Filter,而你购买的单个IP可以设置MAC,IP段却不能设置,这个问题在国外的主机论坛上也有很多人提到,解决办法是发工单让机房帮你把IP段Route到你的主IP或者购买的单个IP上,还是比较麻烦的。
此外,由于IP广播的特点,你买的IP段里面会有两个IP无法使用(一个作为网关一个作为广播地址),所以如果你买了/29那么实际上只能有6个可用(大部分机房其实是5个可用),但是你出的钱却是8个的,所以如果你需要的IP不超过6个,建议买单个(单个IP最多只能买6个)。
三.解决
然后让我们依次解决这几个问题。
由于面板上我们找不到能够直接安装Proxmox的,所以我们需要通过Rescue系统来安装
激活后需要手动重启系统,然后才会进入Rescue,在这个页面激活后会给你连接密码,请务必记住,这个也是你在Rescue模式中安装系统后你新系统的默认密码
选择第二项来重启系统,等待片刻后就能用SSH连上了
在SSH中输入installimage会进入安装界面
选择Other中的第四项,第三项的Proxmox是4版本的,比较老,第四项是最新版的5
然后会提示不是官方支持的系统,直接回车跳过,接着会告诉你需要修改安装配置,进入一个编辑器界面,在这儿我们可以修改系统Raid配置,系统磁盘分区配置,Hostname啥的
这样代表启用Raid并配置为Raid0,我们只有两块硬盘无法配置Raid10,所以看你需要,如果只是测试可以配置为Raid0,如果要存放要紧的数据建议关闭Raid或者启用Raid1
然后修改分区配置,这样就是boot 512M 其余使用LVM,然后分配给根目录15G 缓存6G,剩下的全部分给/var/lib/vz目录,这个是Proxmox的数据目录,模板,虚拟机磁盘啥的全在这。
如果你要在宿主机上跑啥东西可以给根目录多分点,比如50G啥的
然后基本上就是等了,安装完成后可以访问Proxmox的Web界面了
地址: https://IP:8006/
用户名: root
密码: 救援模式登陆密码
需要注意的是这儿https请忽略警告,然后就能看到管理界面了,登陆可以选择中文
这个提示可以参考我之前的文章来去掉——>传送门
但是刚装完你会发现我们并不好创建虚拟机,为什么?因为没有合适的网卡来桥连,默认只有一个系统网卡,而没有br,怎么办?
由于Proxmox不是Hetzner的官方支持系统,所以我们需要对配置文件稍作修改
这部分参考了 https://forum.proxmox.com/threads/proxmox-network-config-on-hetzner.36245/
vi /etc/network/interfaces ### Hetzner Online GmbH installimage #应用interfaces.d中的其他配置文件 source /etc/network/interfaces.d/* #配置loopback设备 auto lo iface lo inet loopback iface lo inet6 loopback #设置enp2s0为手动配置模式,这个enp2s0看你原本配置文件里是啥 iface enp2s0 inet manual #配置用于开vm的bridge auto vmbr0 iface vmbr0 inet static address 母鸡IP netmask 母鸡子网掩码 gateway 母鸡网关 broadcast 这个在面板的IPs选项卡里鼠标移动到ip上能看到 bridge_ports enp2s0 bridge_stp off bridge_fd 0 #别少了,改成自己的 up route add -net 母鸡IP netmask 母鸡子网掩码 gw 母鸡网关 dev enp2s0 #配置IPv6 iface vmbr0 inet6 static address IPv6地址 netmask 64 gateway fe80::1 #配置用于VM之间内网传输的bridge auto vmbr1 iface vmbr1 inet static address 10.10.10.1 netmask 255.255.255.0 bridge_ports none bridge_stp off bridge_fd 0 #如果需要小鸡能够通过内网IP使用母鸡的网络访问外网,请添加下面的 post-up echo 1 > /proc/sys/net/ipv4/ip_forward post-up iptables -t nat -A POSTROUTING -s '10.10.10.0/24' -o vmbr0-j MASQUERADE post-down iptables -t nat -D POSTROUTING -s '10.10.10.0/24' -o vmbr0 -j MASQUERADE
然后直接重启,当然请务必确认没写错啥,不然你可能得再次重装了
然后,如果你是用独立IP来开机器的,那么你需要去面板给你的IP申请独立的MAC地址
IP边上这个图标点一下进去就能申请了,然后开机器的时候自己指定MAC这样就OK了
大部分情况下分配的IP是和你服务器自带的IP在一个段里的,如果不在一个段里可能发生创建的VPS在CentOS6下无网络的情况,可以参考这篇文章解决——>传送门
文章评论
其实proxmox也可以从debian直接安装的,特别是没有恢复系统、ipmi之类的协助的时候。博主可以参考https://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_Stretch 这篇官方指导。
@优推 这个我知道,屌鸡以前那个debian转proxmox就是这个办法,不过在官方提供Proxmox的情况下还是用现成的比较好(大部分商家提供的镜像都会做好适配,基本上不用你去改啥,Hetzner这个Unofficial的比较特殊),因为这个转的也不会帮你自动配网卡,还是需要改网络设置的
感谢博主分享~ 折腾了很久看了这篇文章后开出来的小鸡终于有网了。
求博主分享个,怎么用vps开nat小鸡方法
@小白 nat小鸡的教程梨园那儿有,就是边上那个https://liyuans.com/
按照这个教程IPV4正常了。但是VMBR0的IPV6地址一直不能用。请问怎么办呀
@Feisu 你vmbr0怎么配置的,我这儿是配到本地的,你要是也是hetzner的话需要和我这个网关一样
大佬,请问下,我的配置如下:
auto lo
iface lo inet loopback
iface lo inet6 loopback
iface enp2s0 inet manual
auto vmbr0
iface vmbr0 inet static
address 140.123.123.123
netmask 255.255.255.224
gateway 140.123.123.225
broadcast 140.123.123.225
bridge_ports enp2s0
bridge_stp off
bridge_fd 0
up route add -net 140.123.123.123 netmask 255.255.255.224 gw 140.123.123.225 dev enp2s0
iface vmbr0 inet6 static
address 2a01:123:abc:1234::2
netmask 64
gateway fe80::1
auto vmbr1
iface vmbr1 inet static
address 192.168.1.1
netmask 255.255.255.0
bridge_ports none
bridge_stp off
bridge_fd 0
iface vmbr1 inet6 static
address 2a01:123:abc:1234::2
netmask 64
目前母鸡PING正常,但IPV6不通,小鸡IPV4正常,也是IPV6不通,请问要如何解决?
@康康 iface vmbr1 inet6 static
address 2a01:123:abc:1234::2
netmask 64
这段是干啥的,你不是把ipv6配在vmbr0上了吗,重复了
@Senra 嗯嗯嗯,明白了,这是看之前很多配置里写的,所以也不清楚