这两天路由器感觉有点神,ping都能够有1秒的时间,被人骂死。
原先以为是无线有问题,给加了一个无线,结果还是不如意,失望,看来这小小的tp-link已经满足不了现在的需求了。
唠叨一下:
对于我这个不明真相的群众,最好的办法是更换一个路由器,看看是否凑效,笨人有笨方法。
把以前的一个路由器领了出来,还积尘了。。抹干净,准备测试。。
发现忘记哪个端口是内网了,忘记设置的什么ip了!怎么办?
端口扫描 nmap 对几个网段和几个端口都扫描了,一无所获,该死的路由器。
有空整理一些nmap的用法,很有用。
我找reset的地方,没有,遂拿来螺丝刀,开盖检查是否在机器里面,结果还是失望,原来d-link安全性那么好!
里面那么简单,居然套那么大的一个壳,网上搜了才知道,必须用console线才能重置,可没这个线,你说倒霉不?
最后一招了,用局域网的服务器做网关!
这个想法一直就有,自从有限速的需求以来,就有这个想法打造一个,看来这次势在必行。
其实linux网关很简单:
1 打开机器的转发功能
2 把转发的包给nat一下,发出去
(nat/ network address Translation 网络地址转换)
看看最简单的脚本:
如上面所说的,其实这里就完成了两个事情
第一个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检查了好久,发现是原先的转发的问题,导致很多流量很奇怪,去掉路由器的设置,重启就正常了。
原先以为是无线有问题,给加了一个无线,结果还是不如意,失望,看来这小小的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 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检查了好久,发现是原先的转发的问题,导致很多流量很奇怪,去掉路由器的设置,重启就正常了。
订阅了ubuntu的信息,所以看到这个消息:
蛮喜欢的,国外官方网站一直都有免费发放CD,国内有人收到,还很欣喜的跟我说,我收到了从国外寄给我的ubuntu的CD,很开心。虽然时间长了点,但申请了会有发放的,可能得排队。国内有此行动我觉得是开源事业的推动之一,很开心的一件事情,希望大家都可以试用一下ubuntu,至少我是推荐了身边的人用windows下面安装程序的方式安装了ubuntu,值得体验!
引用
清北DIY俱乐部成立于2002年,由清华北大在校学生创立,致力于提供高品质的电脑产品和相关服务。为了推动开源软件事业在中国的普及和发展,清北从 2006年开始向高校和社会免费派发Linux系统光盘,目前已经进行了Ubuntu 6.06、Ubuntu7.10、Ubuntu 8.04和Ubuntu 9.04四次大规模的光盘派发活动。
从2009年11月16日起,清北将在北京南京深圳三地同步向全国免费派发 Ubuntu 9.10光盘。 并且在接下来的一年里,我们还计划向大家免费派发Ubuntu 10.04和Ubuntu 10.10的光盘。这次的派发活动将不间断地持续一年,希望更多的朋友能够藉由这个活动认识、了解和使用Ubuntu,进而开始喜爱和热爱开源、自由、免 费、强大、易用的Linux桌面操作系统。大家的参与,将使得社区更为强大,发展更为迅速,我们的明天会更好!
从2009年11月16日起,清北将在北京南京深圳三地同步向全国免费派发 Ubuntu 9.10光盘。 并且在接下来的一年里,我们还计划向大家免费派发Ubuntu 10.04和Ubuntu 10.10的光盘。这次的派发活动将不间断地持续一年,希望更多的朋友能够藉由这个活动认识、了解和使用Ubuntu,进而开始喜爱和热爱开源、自由、免 费、强大、易用的Linux桌面操作系统。大家的参与,将使得社区更为强大,发展更为迅速,我们的明天会更好!
蛮喜欢的,国外官方网站一直都有免费发放CD,国内有人收到,还很欣喜的跟我说,我收到了从国外寄给我的ubuntu的CD,很开心。虽然时间长了点,但申请了会有发放的,可能得排队。国内有此行动我觉得是开源事业的推动之一,很开心的一件事情,希望大家都可以试用一下ubuntu,至少我是推荐了身边的人用windows下面安装程序的方式安装了ubuntu,值得体验!
在Ubuntu下用了不算长,同样发现flash会出现中文显示不出的情况,上网查到类似资料
删掉某个文件即可,当然,要备份一下才好:
经过测试,有效。。
初步估计是文件所引用的字体无法解析中文字体,看看文件到内容,是一个字体配置文件:
lrwxrwxrwx 1 root root 31 2009-11-04 12:22 49-sansserif.conf -> ../conf.avail/49-sansserif.conf
删掉的文件其实只是一个链接文件
参考 http://yuleihome.javaeye.com/blog/192602
有提到另外到方式,改变文件使用的字体
删掉某个文件即可,当然,要备份一下才好:
sudo rm /etc/fonts/conf.d/49-sansserif.conf
经过测试,有效。。
初步估计是文件所引用的字体无法解析中文字体,看看文件到内容,是一个字体配置文件:
lrwxrwxrwx 1 root root 31 2009-11-04 12:22 49-sansserif.conf -> ../conf.avail/49-sansserif.conf
删掉的文件其实只是一个链接文件
aslibra@ubuntu:~$ cat /etc/fonts/conf.avail/49-sansserif.conf
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!--
If the font still has no generic name, add sans-serif
-->
<match target="pattern">
<test qual="all" name="family" compare="not_eq">
<string>sans-serif</string>
</test>
<test qual="all" name="family" compare="not_eq">
<string>serif</string>
</test>
<test qual="all" name="family" compare="not_eq">
<string>monospace</string>
</test>
<edit name="family" mode="append_last">
<string>sans-serif</string>
</edit>
</match>
</fontconfig>
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!--
If the font still has no generic name, add sans-serif
-->
<match target="pattern">
<test qual="all" name="family" compare="not_eq">
<string>sans-serif</string>
</test>
<test qual="all" name="family" compare="not_eq">
<string>serif</string>
</test>
<test qual="all" name="family" compare="not_eq">
<string>monospace</string>
</test>
<edit name="family" mode="append_last">
<string>sans-serif</string>
</edit>
</match>
</fontconfig>
参考 http://yuleihome.javaeye.com/blog/192602
有提到另外到方式,改变文件使用的字体
由于我的ubuntu是在win下安装的,分配了只有5G的空间,贪婪的把好多软件都安装了,结果发现空间不够了,只有100多M剩余,怎么办?
重装是可以解决,可也挺耗时间的,经历那点无聊的时光。。。
于是乎我想到了ln来处理,找到安装的分区,建立了home目录,然后复制了所有home目录的文件到此,删除home目录,做了个link操作 ln -s /XXX/home /home
一切看似都没有什么问题,注销后登录界面正常,登录后,发现没声了。。
然后还有输入法也没有了。。。
检查声卡,似乎很奇怪,不知道哪里配置硬件的好,输入法添加了,可切换不出来
新建了一个用户,也是一个毛病,但是,root用户登录是可以的,这个肯定是配置上的问题了。。
后来发现个问题,命令行启动eclips时提示ibus的错误,/XXX/.config/XXX 的用户名不是当前用户!
问题在此,linux下目录都是有用户权限的,而我找的空间是在NTFS分区,用户名永远是root,权限是777的,mount操作windows的分区都是用root用户的,这个导致了一些程序会出错,没法配置当前用户的参数。
把所有文件恢复到linux分区,一切问题恢复正常!
看来只能把部分不需要分清权限的目录link过去了。。
先麻烦着用着了,以后也许就是ubuntu为主操作系统,winXP呆虚拟机或者是备用操作系统了。
重装是可以解决,可也挺耗时间的,经历那点无聊的时光。。。
于是乎我想到了ln来处理,找到安装的分区,建立了home目录,然后复制了所有home目录的文件到此,删除home目录,做了个link操作 ln -s /XXX/home /home
一切看似都没有什么问题,注销后登录界面正常,登录后,发现没声了。。
然后还有输入法也没有了。。。
检查声卡,似乎很奇怪,不知道哪里配置硬件的好,输入法添加了,可切换不出来
新建了一个用户,也是一个毛病,但是,root用户登录是可以的,这个肯定是配置上的问题了。。
后来发现个问题,命令行启动eclips时提示ibus的错误,/XXX/.config/XXX 的用户名不是当前用户!
问题在此,linux下目录都是有用户权限的,而我找的空间是在NTFS分区,用户名永远是root,权限是777的,mount操作windows的分区都是用root用户的,这个导致了一些程序会出错,没法配置当前用户的参数。
把所有文件恢复到linux分区,一切问题恢复正常!
看来只能把部分不需要分清权限的目录link过去了。。
先麻烦着用着了,以后也许就是ubuntu为主操作系统,winXP呆虚拟机或者是备用操作系统了。
此文为推荐阅读资料:
参考阅读:Linux平台上关于工具Wine的完全使用指南
引用
用了段时间的UBUNTU,感觉很好!可是工作的时候还是要用到 windows软件,于是乎,采取折中方案:安装UBUNTU下的WINE。
如果你像我一样的话,当你第一次使用Wine的时候,就会被Wine的帮助文章现状所困扰。互联网上确实有很多的HOWTO文章来教你使用一些程序或游戏,但是我找不到一个全面的“Wine初学者教程”来让我真正懂得实际了解和使用Wine所需的基本知识。我不需要一个教我如何运行半条命2的文章,我需要的是一篇能实实在在教我怎样使用Wine的文章。最后,我整理了从众多的Wiki、指南、帖子和HOWTO搜集来的资料,写成这篇文章。虽然这篇文章主要针对在Wine下运行游戏,但是它包括的几乎所有的信息都可以应用到用Wine来运行其它的程序。
如果你像我一样的话,当你第一次使用Wine的时候,就会被Wine的帮助文章现状所困扰。互联网上确实有很多的HOWTO文章来教你使用一些程序或游戏,但是我找不到一个全面的“Wine初学者教程”来让我真正懂得实际了解和使用Wine所需的基本知识。我不需要一个教我如何运行半条命2的文章,我需要的是一篇能实实在在教我怎样使用Wine的文章。最后,我整理了从众多的Wiki、指南、帖子和HOWTO搜集来的资料,写成这篇文章。虽然这篇文章主要针对在Wine下运行游戏,但是它包括的几乎所有的信息都可以应用到用Wine来运行其它的程序。
参考阅读:Linux平台上关于工具Wine的完全使用指南
ubuntu9.10的安装我在电脑上安装了,可惜的是,总碰到更新的一些问题,hash不对,有错误的包之类的,修复总不行,心力憔悴啊。。发现要推广linux,氛围很重要,比如大家都用docx的破文档的话,你就需要office2007来解决兼容性的问题,大家为什么都那么的推崇这破玩意呢?
发现google资讯里的一篇关于ubuntu安装后处理的一些软件的介绍,不错,推荐大家看看:
《装完Ubuntu 9.10后要干的事》
发现google资讯里的一篇关于ubuntu安装后处理的一些软件的介绍,不错,推荐大家看看:
《装完Ubuntu 9.10后要干的事》
为什么要控制带宽使用?
带宽资源有限,你可能需要针对性的限制某些应用占用的带宽,保证其它服务的正常稳定,那你就需要分配好大家的使用量了。好久以前,我在同步文件的时候就占用带宽很多,这同步也很猛,基本上能尽力跑满,太英勇了。
那其实我们可以做到按远端发送的IP限制带宽使用,或者限制某些端口的带宽占用。
如何控制?
先引述一下TC (man tc):
网上搜索整理了一个脚本:
限制 192.168.1.1/24 网段使用带宽在4M-10M直接
检查的命令:
还谈不上对tc了解很多,以后再整理tc的资料,有需要这样的例子的朋友可以参考一下。
网上资料很多,搜一下就有应用的例子,暂时阿权这里就这个实例了,效果图:

基本在4M-10M之间浮动,已经满足我的需求了,以后把参数都说明一下。
带宽资源有限,你可能需要针对性的限制某些应用占用的带宽,保证其它服务的正常稳定,那你就需要分配好大家的使用量了。好久以前,我在同步文件的时候就占用带宽很多,这同步也很猛,基本上能尽力跑满,太英勇了。
那其实我们可以做到按远端发送的IP限制带宽使用,或者限制某些端口的带宽占用。
如何控制?
先引述一下TC (man tc):
引用
NAME
tc - show / manipulate traffic control settings
DESCRIPTION
Tc is used to configure Traffic Control in the Linux kernel. Traffic Control consists of the following:
SHAPING
When traffic is shaped, its rate of transmission is under control. Shaping may be more than lowering the available
bandwidth - it is also used to smooth out bursts in traffic for better network behaviour. Shaping occurs on egress.
SCHEDULING
By scheduling the transmission of packets it is possible to improve interactivity for traffic that needs it while
still guaranteeing bandwidth to bulk transfers. Reordering is also called prioritizing, and happens only on egress.
POLICING
Where shaping deals with transmission of traffic, policing pertains to traffic arriving. Policing thus occurs on
ingress.
DROPPING
Traffic exceeding a set bandwidth may also be dropped forthwith, both on ingress and on egress.
Processing of traffic is controlled by three kinds of objects: qdiscs, classes and filters.
tc - show / manipulate traffic control settings
DESCRIPTION
Tc is used to configure Traffic Control in the Linux kernel. Traffic Control consists of the following:
SHAPING
When traffic is shaped, its rate of transmission is under control. Shaping may be more than lowering the available
bandwidth - it is also used to smooth out bursts in traffic for better network behaviour. Shaping occurs on egress.
SCHEDULING
By scheduling the transmission of packets it is possible to improve interactivity for traffic that needs it while
still guaranteeing bandwidth to bulk transfers. Reordering is also called prioritizing, and happens only on egress.
POLICING
Where shaping deals with transmission of traffic, policing pertains to traffic arriving. Policing thus occurs on
ingress.
DROPPING
Traffic exceeding a set bandwidth may also be dropped forthwith, both on ingress and on egress.
Processing of traffic is controlled by three kinds of objects: qdiscs, classes and filters.
网上搜索整理了一个脚本:
限制 192.168.1.1/24 网段使用带宽在4M-10M直接
#!/bin/sh
# http://www.aslibra.com/blog/post/tc_bandwidth_control.php
# code by hqlulu
tc qdisc del dev eth0 root handle 1:
tc qdisc add dev eth0 root handle 1: htb r2q 1
tc class add dev eth0 parent 1: classid 1:1 htb rate 4mbit ceil 10mbit
tc filter add dev eth0 parent 1: protocol ip prio 16 u32 match ip dst 192.168.1.1/24 flowid 1:1
# modify dst xxxx
# http://www.aslibra.com/blog/post/tc_bandwidth_control.php
# code by hqlulu
tc qdisc del dev eth0 root handle 1:
tc qdisc add dev eth0 root handle 1: htb r2q 1
tc class add dev eth0 parent 1: classid 1:1 htb rate 4mbit ceil 10mbit
tc filter add dev eth0 parent 1: protocol ip prio 16 u32 match ip dst 192.168.1.1/24 flowid 1:1
# modify dst xxxx
检查的命令:
[root@localhost ~]# tc qdisc show dev eth0
qdisc htb 1: r2q 1 default 0 direct_packets_stat 11591872
[root@localhost ~]# tc class show dev eth0
class htb 1:1 root prio 0 rate 4Mbit ceil 10Mbit burst 2099b cburst 2848b
[root@localhost ~]# tc filter show dev eth0
filter parent 1: protocol ip pref 16 u32
filter parent 1: protocol ip pref 16 u32 fh 800: ht divisor 1
filter parent 1: protocol ip pref 16 u32 fh 800::800 order 2048 key ht 800 bkt 0 flowid 1:1
match c0a80100/ffffff00 at 16
qdisc htb 1: r2q 1 default 0 direct_packets_stat 11591872
[root@localhost ~]# tc class show dev eth0
class htb 1:1 root prio 0 rate 4Mbit ceil 10Mbit burst 2099b cburst 2848b
[root@localhost ~]# tc filter show dev eth0
filter parent 1: protocol ip pref 16 u32
filter parent 1: protocol ip pref 16 u32 fh 800: ht divisor 1
filter parent 1: protocol ip pref 16 u32 fh 800::800 order 2048 key ht 800 bkt 0 flowid 1:1
match c0a80100/ffffff00 at 16
还谈不上对tc了解很多,以后再整理tc的资料,有需要这样的例子的朋友可以参考一下。
网上资料很多,搜一下就有应用的例子,暂时阿权这里就这个实例了,效果图:
基本在4M-10M之间浮动,已经满足我的需求了,以后把参数都说明一下。






