屋子里使用的是有线路由器,我只有一根网线,但想让我的两台本本都能够上网,在windows下可以用ccproxy或者ICS,在linux下也不难,主要是要把iptables(Linux下的防火墙,相应的有IPv4和IPv6版本)设置好,ipv4 forward转发打开就可以了。
拓扑:实验环境:Linux通过有线网络实现上网,并创建无线点对点网络。
Windows通过连接到Linux的无线点对点网络,并把默认网关设置为Linux的无线网卡IP地址,实现上网功能。
Linux端设置步骤:1.把有线网络搞定
2.创建点对点连接,并手动指定IP地址,该IP地址不和有线网卡同一个网段,但必须和Windows处于同一个网段
3.执行网络配置脚本
配置步骤图片:
a.创建点对点无线网络
b.配置该网络的参数,主要是设定无线网卡的IP
c.配置该网络的参数,主要是设定无线网卡的IP,照着图配置就行
Linux网络共享配置脚本(把下面的内容做成一个script,并赋予执行权限chmod u+x script,然后./script即可完成配置):
#!/bin/sh
INTIF="wlan0" #INTIF即为无线网卡的设备名称,通过ifconfig可以查看到,要替换成你自己的。
EXTIF="eth0" #EXTIF即为有线网卡的设备名称,通过ifconfig可以查看到,要替换成你自己的。
EXTIP="`/sbin/ifconfig eth0 | grep 'inet addr' | awk '{print $2}' | sed -e 's/.*://'`"
/sbin/depmod -a
/sbin/modprobe ip_tables
/sbin/modprobe iptable_nat
/sbin/modprobe ip_nat_ftp
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
iptables -P INPUT ACCEPT
iptables -F INPUT
iptables -P OUTPUT ACCEPT
iptables -F OUTPUT
iptables -P FORWARD DROP
iptables -F FORWARD
iptables -t nat -F
iptables -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT
iptables -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
Winodws端设置步骤:1.连接到Linux创建的点对点网络
2.将IP地址配置成和Linux同一个网段,DNS服务器必须设置成8.8.8.8(google的DNS),不能设置成Linux的IP,因为我们Linux下默认并没架设DNS服务。
配置步骤图片:
a.连接到Linux创建的无线接入点
b.配置TCP/IP属性,请按照下图规律配置
Done!!!!!!