怎样使用Linux的iptables工具进行网络共享(2)

在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 deldefault

$ 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协议)需要根据你具体的网络接口协议来替换。

$ sudo vi /usr/local/bin/ishare

#!/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 ppp0 -j MASQUERADE

保存以上的脚本为/usr/local/bin/ishare,然后添加可执行权限通过执行下面的命令。

$ sudo chmox +x /usr/local/bin/ishare

如果你需要这个脚本开机启动,你需要在/etc/rc.local文件中执行这个脚本,并在该文件中的"exit 0"之前添加下面一行。

/usr/local/bin/ishare

本���永久更新链接地址

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/17813.html