这两天路由器感觉有点神,ping都能够有1秒的时间,被人骂死。
原先以为是无线有问题,给加了一个无线,结果还是不如意,失望,看来这小小的tp-link已经满足不了现在的需求了。

唠叨一下:

对于我这个不明真相的群众,最好的办法是更换一个路由器,看看是否凑效,笨人有笨方法。
把以前的一个路由器领了出来,还积尘了。。抹干净,准备测试。。
发现忘记哪个端口是内网了,忘记设置的什么ip了!怎么办?
端口扫描 nmap 对几个网段和几个端口都扫描了,一无所获,该死的路由器。
有空整理一些nmap的用法,很有用。
我找reset的地方,没有,遂拿来螺丝刀,开盖检查是否在机器里面,结果还是失望,原来d-link安全性那么好!
里面那么简单,居然套那么大的一个壳,网上搜了才知道,必须用console线才能重置,可没这个线,你说倒霉不?

最后一招了,用局域网的服务器做网关!
这个想法一直就有,自从有限速的需求以来,就有这个想法打造一个,看来这次势在必行。

其实linux网关很简单:

1 打开机器的转发功能
2 把转发的包给nat一下,发出去
(nat/ network address Translation 网络地址转换)

看看最简单的脚本:

#code from http://aslibra.com/
echo 1 > /proc/sys/net/ipv4/ip_forward

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


如上面所说的,其实这里就完成了两个事情
第一个echo是启用转发功能
-F的语句是清空iptables的规则
-P的语句是设置转发默认为接受,不明确为允许是转发不成功的
最后一句就是给转换一下,发出去,变成公网IP

从路由器转换到linux机器

路由器是192.168.1.1,机器ip为192.168.1.5
为了确保转换时间最少,我在机器上绑定一个eth1:1,也就是监听多一个ip
设置路由器的ip为192.168.1.2,然后迅速更改eth1:1的ip为原网关ip,完成,过程就几秒钟,不错
如果原来网关为dns解析,那机器上的named需要重启一下,因为named根据ip启动监听的,新启用ip不监听
可恶的named为什么不监听0.0.0.0?

附带问题:

另外,原路由器的端口转发将无效,所有的端口转发的目标机器后,网关已经改变,比如从192.168.1.2发出转发端口给192.168.1.4,处理完毕转到外网,发给网关192.168.1.1,这个数据包就是无效的了。
我用tcpdump检查了好久,发现是原先的转发的问题,导致很多流量很奇怪,去掉路由器的设置,重启就正常了。
Tags: , ,
分页: 1/1 第一页 1 最后页 [ 显示模式: 摘要 | 列表 ]

阅读推荐

服务器相关推荐

开发相关推荐

应用软件推荐