KVM虚拟机使用NAT+iptables做端口映射

来源:未知 责任编辑:智问网络 发表时间:2013-11-10 20:24 点击:

KVM虚拟机使用NAT+iptables做端口映射
 
今天一个网友咨询了我一个问题,情况是这样的。
他有一个KVM宿主机,一个外网IP绑定在了宿主服务器上,但是希望直接用ssh访问上面
的所有虚拟机,还想虚拟机提供外网服务,解决方法如下: www.2cto.com  
 
环境为RHEL6.3,外网IP为115.183.0.1
1.网络方式使用NAT连接,配置文件为/etc/libvirt/qemu/networks/default.xml;
    查看网络配置文件,下面的是默认情况
# brctl show 
bridge name     bridge id               STP enabled     interfaces 
virbr0          8000.5254005aa781       yes             virbr0-nic 
 
   如果需要修改的话,可以直接修改或者创建新的文件,然后使用下面命令来创建新的网络
virsh net-define  【filename】 
2.安装VM
virt-install --name linux-nat --ram 2048 --disk /data/linux.nat.raw  --graphics \
vnc,port=5902  --network network=default,model=virtio --vcpus=8 --os-variant=rhel6 
--import 
# /data/linux.nat.raw  这个是做好的Linux系统模版
 
3.查看宿主服务器virbr0的网卡信息
ifconfig virbr0 
virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue      state UNKNOWN  
link/ether 52:54:00:5a:a7:81 brd ff:ff:ff:ff:ff:ff 
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0 
    进入虚拟机中,修改IP为192.168.122.2,网关为192.168.122.1
 
4.配置iptables,实现的原理是用户访问宿主IP的8000端口,然后iptables转发这个包到虚拟机的22端口上
# iptables -A INPUT -p tcp --dport 8000 -j ACCEPT
#  iptables -t nat -A PREROUTING -d 115.183.0.1 -p tcp -m tcp --dport 8000 -j DNAT --to-destination 192.168.122.2:22               
#  iptables -t nat -A POSTROUTING -s 192.168.122.0/255.255.255.0 -d 192.168.122.2 -p tcp -m tcp --dport 22 -j SNAT --to-source 192.168.122.1 
 
    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    推荐热点

    • VMware View 5.0从菜鸟到高手系列 -连接虚拟桌面
    • kvm中的windows使用Vmware的显示驱动
    • VMware Linux使用Xshell登陆
    • 虚拟机安装MAC查看电脑CPU是否支持VT技术
    • VMWare NAT Centos6.2静态ip设置
    • 给虚拟机提速的方法
    • vmware虚拟机浅析-虚拟网卡
    • VirtualBox打开虚拟硬盘失败的问题
    • Virtual Box下同时配置host-only和bridge

    快速直达

    操作系统导航

    LinuxWindows虚拟机
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1