
1、激活IP转发 为了
设置网络共享,你需要在linux
主机上更改一个内核参数来使能IP转发功能。内核启动参数设定在/etc/sysctl.conf文件中。 打开这个文件,定位到含有"# net.ipv4.ip_forward = 0"的这一行,移除#号(即取消注释),然后将其值设置为1,改好之后应该和下面的一致。 1.net.ipv4.ip_forward = 1 你还要使激活IP转发功能生效,通过执行下面的命令: $ sudo sysctl -w net.ipv4.ip_forward=1 $ sudo sysctl -p2、NAT配置 另一个网络共享的重要部分是NAT配置,这可以通过使用iptables的命令,iptables包含四个防火墙的规则表: ·FILTER (默认表格) ·NAT ·MANGLE ·RAW 这个教程中我们将仅使用两个表格:FILTER和NAT表格。 首先,刷新所有活跃的防火墙的规则。 $ sudo iptables -X $ sudo iptables -F $ sudo iptables -t nat -X $ sudo iptables -t nat -F 在输入表格中,你需要设置转发链(FORWARD)成可接受的(ACCEPT)目的地,因此所有通过主机的数据包将会被正确的处理。 $ sudo iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT $ sudo iptables -I FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT 在NAT表中,你必须为你的WAN口启用IP伪装功能,我们假设WAN口协议是wlx085700c5b983。为了在wlx085700c5b983接口上使能IP伪造技术,我们使用以下的命令(wlx085700c5b983为可联网网卡名字): $ sudo iptables -t nat -I POSTROUTING -o wlx085700c5b983 -j MASQUERADE3、配置私有IP地址 在linux主机上的所有配置完成后,你需要配置其他设备(linux/windows的PC或笔记本)的DNS服务器以及默认网关,让它们的数据 流可以指向linux主机。注意你不需要在linux主机上设置一个DNS服务器,从其他设备发出的每一个DNS请求都会通过上游的ISP自动转发到linux主机上。 如果你的其他设备上用的系统是linux,你可以通过以下命令来更改他们的默认网关和DNS服务器。假设你的网段是192.168.1.0/24的私有IP地址网段,linux主机上绑定的IP地址是192.168.1.1。 $ sudo ip route del default $ sudo ip route add default via 192.168.1.1 $ sudo sh -c "echo 'nameserver 192.168.1.1' >/etc/resolv.conf" 如果还有其他的linux设备,那么你可以重复以上命令。 如果你有windows设备,你可以通过控制面板的网络连接属性来更改默认网关和DNS服务器。4、完整的脚本 这是一个在linux主机上设置网络连接共享的一个完整的脚本。WAN口(ppp0协议)需要根据你具体的网络接口协议来替换。 1.$ sudo vi /usr/local/bin/netshare #!/bin/bash ## Internet connection shating script sysctl -w net.ipv4.ip_forward=1 sysctl -p iptables -X iptables -F iptables -t nat -X iptables -t nat -F iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -I FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -t nat -I POSTROUTING -o wlx085700c5b983 -j MASQUERADE 保存以上的脚本为/usr/local/bin/netshare,然后添加可执行权限通过执行下面的命令。wlx085700c5b983为可联网网卡名字 1.$ sudo chmod +x /usr/local/bin/netshare 如果你需要这个脚本开机启动,你需要在/etc/rc.local文件中执行这个脚本,并在该文件中的"exit 0"之前添加下面一行。 1./usr/local/bin/netshare 主机1设置完毕。 内网主机设置及主机2 1.打开配置文件sudo vim /etc/network/interfaces 添加下列行: gateway 192.168.0.1(指定网关--主机1的内网ip) dns-nameservers 10.1.1.1(DNS和主机1的DNS是一样的) 2.重启网络sudo /etc/init.d/networking restart 然后看看现在是否已连网了呢(sudo apt-get update) NFS: 在主机1上 sudo apt-get install nfs-server(安装所需的软件) 打开文件sudo vi /etc/exports /home/aaa *(rw,sync) sudo showmount -e(可查看共享的文件夹) 在主机2上 sudo apt-get install nfs-common sudo mkdir /home/bbb sudo mount -t nfs 192.168.0.1:/home/aaa /home/bbb 然后cd /home/bbb touch 123.txt 你可以从主机1上看到/home/aaa文件夹里多了个文件123.txt 到此结束。先将脚本复制或者软连接到/etc/init.d/目录下,假设我在当前目录创建一个start-zk.sh的文件,用于开机自启动zookeeper。注意使用#!/bin/bash开头: #!/bin/bash some command 赋予文件start-zk.sh文件可执行权限 chomd +xstart-zk.sh 执行命令,将脚本添加到初始化执行的队列中去: update-rc.d start-zk.sh d efaults 卸载启动脚本的方法 cd/etc/init.dsudoupdate-rc.d-fstart-zk.sh remove update-rc.d 命令参考: http://blog.csdn.net/shb_derek1/article/details/8489112 wget -qO- ifconfig.me/ipcurl ifconfig.me资料:
netmask ip地址 broadcast 子网掩码 gateway 网关 dns DNS服务器
vmware三种网络连接上网设置:
1.桥接方式(bridge) :
默认使用vmnet0
将虚拟机的ip设置与主机同网段未使用ip,其余与主机相同:
ip地址与主机同段相异,
子网掩码与主机相同,
网关与主机相同,
DNS服务器与主机相同。
实现虚拟机-主机虚拟机-互联网 通信。
2.共享方式(nat) :
默认使用vmnet8
将虚拟机设置成使用dhcp方式上网,windows下选择"自动获取ip",linux下开启dhcp服务即可。
手动设置:
ip设置与vmnet8同网段,
网关设置成vmnet8的网关,
DNS服务器设置与主机相同,
实现虚拟机-主机虚拟机-互联网 通信。
查找vmnet1的网关,通常是xxx.xxx.xxx.2
例如 vmnet8 ip:172.16.249.1 gw :172.16.249.2
虚拟机设置: ip :172.16.249.100 gw: 172.16.249.2
3.私有方式(host-only):
默认使用vmnet1
将虚拟机ip设置与vmnet8同网段,gateway设置成vmnet1的ip,其余设置与vmnet1相同,dns设置与主机相同
例如 vmnet1 ip :172.16.245.1
虚拟机设置: ip :172.16.245.100 gateway :172.16.245.1
这样就实现了虚拟机-主机 通信,但是虚拟机-互联网 仍无法通信
简单分析:
说明:我的是校园网环境,MAC是绑定的^_^
特别提示:你必须保证你的虚拟机中,虚拟网络编辑器中的DHCP和NAT服务必须是启动的!!!特别是在你使用NAT方式时!
1.如果你只是让你的虚拟机访问你所在的私有网络(对于我那就是校园网)
那你就选择桥接方式(bridge),IP设置为跟你真实主机一样,只要使用同网段中未被使用的IP就行!!!如果你愿意拿你虚拟主机的MAC注册一下,我敢保证这种方法也能上网,或者把虚拟主机的MAC改成已经注册过的(不建议是自己真实主机的),那也应该能上网.(这种改MAC的方法我们经常用,算是对学校的抗议吧!!!!:)
2.如果你只是想在你虚拟机内部组建网络那就选则私有方式(host-only)
这样可以在你的主机上模拟网络环境(我的模拟环境有8个系统,两个网段,其中linux占半数 ^_^)
接下来是我最得意的上网方式,共享方式,就是NAT地址转换方式,我曾经同时4个系统打开Baidu的网站,虚拟机中两个Windows2000 一个linux (FC5)还有真实主机 ^_^
对虚拟机唯一有用的是你的真实的DNS服务器IP,其他的决定于你的vmnet8(排除你做了更改!!一般默认vmnet8是NAT的)
方法在上面已经描述了,你应该知道怎么做了把!
需要注意的是:
1.虚拟机网络段的分配是随机的(我也挺感到奇怪的!!),每次重新安装虚拟机VM软件都不一样,但是可以该的,要修改注册表,不过没必要
2.取保你虚拟机的的DHCP,NAT服务都是启动的(如果你的DHCP启动那你连你NAT方式的IP都省了,不过建议设置IP,因为这是经验^_^)
3.你的虚拟机一定要做了快照,否则你虚拟机崩溃你就惨了(我同学用我的方法设置了之后上XXX网站就搞的虚拟机崩溃了 ^_^)
评论列表(0条)