ubuntu server双网卡做NAT让局域网共享上网的方法(各位大神帮我分析一下)

我不明白 发布于 2014/07/28 14:52
阅读 889
收藏 0
一、实际情况和需求:
家里有一条固定IP的光纤线路
ubuntu14.04server 服务器一台(双网卡)
无线路由器一个
工作站和手机有很多台。
请问服务器如何制作DHCP+网关 让工作站和手机进行上网?

二、目前的进展
昨天设置这台服务器耗费了好几个小时,但是没有成功,说一下昨天工作的成果
1、设置eth0和eth1两个网卡的IP地址
eth0为对外网的网卡,eth1是对内局域网的网卡
我的设置如下:
auto eth0
iface eth0 inet static
address 202.XX.XX.XXX
gateway 202.XX.XX.XXX
netmask 255.255.255.128
dns-nameservers 114.114.114.114 8.8.8.8

auto eth1
iface eth1 inet static
address 172.16.1.1
netmask 255.255.255.0

目前服务器可以正常上网,局域网内的客户电脑可以ping通172.16.1.1的网卡。

2、设置IP转发
修改/etc/sysctl.conf,添加这一行:
net.ipv4.ip_forward= 1

3、然后我设置了Iptables根据网上的教程设置如下:

iptables -F
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -o eth0 -j MASQUERADE

4、以上设置完毕以后重新启动系统

5、设置客户端IP地址
ip:172.16.1.5
子掩码:255.255.255.0
网关:172.16.1.1
DNS:172.16.1.1


问题就是客户端无法上网,请问各位大神,我是在哪个环节上出错了呢?
加载中
0
北方羊
北方羊
添加下route看看。看哪个环节使用traceroute  
北方羊
北方羊
回复 @我不明白 : 无法解析是dns服务器的问题。能ping通那个外网网卡是说明你路由已经成功了。
我不明白
我不明白
问题好像还是存在于内网卡与外网卡之间的IP转发。 我在启动文件中加入两条路由也未能解决此问题。 #route add -net 172.16.1.0 netmask 255.255.255.0 eth1 #route add -net 202.XX.XX.0 netmask 255.255.255.0 eth0
我不明白
我不明白
我的客户机是win7系统ip:172.16.1.5 ping 172.16.1.1 通过 ping 接外网的那个网卡能ping通 在本机用tracert www.163.com 显示:无法解析目标系统名称。
0
我不明白
我不明白
我在ubuntu下执行 iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -o eth0 -j SNAT --to 1.58.XX.XXX 语句后
为什么用iptables -L 查看 没有任何规则呢?




$ sudo iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -o eth0 -j SNAT --to 1.58.xx.xxx
$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination


Chain FORWARD (policy ACCEPT)
target prot opt source destination


Chain OUTPUT (policy ACCEPT)
target prot opt source destination




这是什么原因呢?
0
s
szchina

不能上网,如果可以ping通172.16.1.1与eth0,说明转发都已经OK,

这里不能上网,ping www.baidu.com无响应,应该是你的“5、设置客户端IP地址”中,DNS有问题,修改成“dns-nameservers 114.114.114.114 8.8.8.8”

5、设置客户端IP地址 
ip:172.16.1.5 
子掩码:255.255.255.0 
网关:172.16.1.1 
DNS:此处最好设置固定IP的光纤线路默认分发的DNS

返回顶部
顶部