Linux-让Kvm虚拟机开放服务端口!

linux-让KVM虚拟机开放服务端口!

作者:linux运维菜 2018-08-08 15:00:44

云计算

虚拟化 一直都是使用的虚拟机是kvm,而且都习惯用nat网络模式,但是有时候遇到需要测试一些服务,而且需要测试机访问kvm虚拟机里面的服务。

创新互联专业为企业提供解放网站建设、解放做网站、解放网站设计、解放网站制作等企业网站建设、网页设计与制作、解放企业网站模板建站服务,十余年解放做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

前言

一直都是使用的虚拟机是kvm,而且都习惯用nat网络模式,但是有时候遇到需要测试一些服务,而且需要测试机访问kvm虚拟机里面的服务。

这时候有两种解决方式,一种是使用桥接,一种是使用端口转发。我更倾向于后者,因为我的虚拟机不需要长时间提供服务,使用nat可以更好的隔离。

桥接

如上图:

网桥方式配置步骤

1、编辑修改网络设备脚本文件,增加网桥设备br0

  
 
 
 
  1. vim /etc/sysconfig/network-scripts/ifcfg-br0 
  2.  
  3. DEVICE="br0" 
  4.  
  5. ONBOOT="yes" 
  6.  
  7. TYPE="Bridge" 
  8.  
  9. BOOTPROTO=static 
  10.  
  11. IPADDR=192.168.123.22 
  12.  
  13. NETMASK=255.255.255.0 
  14.  
  15. GATEWAY=192.168.123.1 
  16.  
  17. DEFROUTE=yes 

上述配置将虚拟网卡配置在了192.168.123.* 网段。如果不需要静态地址,可以把配置地址的相关项屏蔽。如:

  
 
 
 
  1. DEVICE="br0" 
  2.  
  3. ONBOOT="yes" 
  4.  
  5. TYPE="Bridge" 
  6.  
  7. BOOTPROTO=dhcp 

2、编辑修改网络设备脚本文件,修改网卡设备eth0

  
 
 
 
  1. vim /etc/sysconfig/network-scripts/ifcfg-eth0 
  2.  
  3. DEVICE="eth0" 
  4.  
  5. NM_CONTROLLED="no" 
  6.  
  7. ONBOOT="yes" 
  8.  
  9. TYPE=Ethernet 
  10.  
  11. BOOTPROTO=none 
  12.  
  13. BRIDGE="br0" 
  14.  
  15. NAME="System eth0" 
  16.  
  17. HWADDR=90:48:9a:1c:09:af 

虚拟机机配置

虚拟机安装时注意,网络要选择用br0桥接方式。

图形化的方式:

文本方式:

编辑修改虚拟机配置文件 /etc/libvirt/qemu/v1.xml,增加如下内容

  
 
 
 
  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  

虚拟机启动后,验证网络接口是否正常:

  
 
 
 
  1. brctl show 
  2.  
  3. bridge name bridge id STP enabled interfaces 
  4.  
  5. br0 8000.4437e64a62ad no eth0 
  6.  
  7. vnet0 

NAT

默认就有nat支持,需要另外的操作,在图形操作里面直接选择nat就可以啦。

服务端口开放

1、桥接的虚拟机直接在,iptables里面开放服务访问就可以直接访问了,不需要经过宿主机的规则限制。

2、nat模式,默认所有的端口只是对虚拟机的网段开放而已,如果需要开放端口,就需要设置端口转发,可以利用一些端口转发工具,也可以直接用iptables。

例子,其中192.168.122.10是我的虚拟机,192.168.122.1是宿主机的IP,需要设置ip_forwad参数

  
 
 
 
  1. iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.122.10:80 
  2.  
  3. iptables -t nat -A POSTROUTING -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.122.1 
  4.  
  5. echo 1 > /proc/sys/net/ipv4/ip_forward 

这样子,我直接访问我宿主机的80端口,就会转发到虚拟机里面的服务了。

本文名称:Linux-让Kvm虚拟机开放服务端口!
URL分享:http://www.shufengxianlan.com/qtweb/news36/540736.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联