
正文
linux命令路由器 linux 路由器
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
如何用linux做路由器限速
linux的开源和免费使得越来越多的厂家用它来做防火墙和路由器,如海蜘蛛,飞鱼星等,其实我们也可以用linux来打造一台高性能的路由器。下面就以redhat为例(其他版本大同小异)教大家做一台能限速的路由器,如何在linux下进行路由器限速就不再困难了。
安装linux如果是新手请安装时安装图形桌面。Linux路由器限速的'设置步骤如下:
路由器限速第一步:建立adsl连接,在系统设置——网络设置处有。在图形界面下很容易搞定。
路由器限速第二步:打开IP转发和伪装(也就是路由与NAT)
1、作为根用户打开/etc/sysconfig/network文件,在文件增加以下一行:
GATEWAYDEV=PPP0这句话的作用是设定默认路由,有时没有也可
2、打开IP转发功能:打开/etc/sysctl.conf文件,修改net.ipv4.ip_forward=0一行,改0改为1
3、重启系统
路由器限速第三步:设置iptables防火墙,决定那些IP能通过linux主机上网。
下面以允许192.168.0.0网段为例:
1、打开终端在#字提示符下输入以下命令:
iptables-tnat-IPOSTROUTING-oppp0-jMASQUERADE#这句意思是伪装从pppo出去的IPiptables-AFORWARD-s192.168.0.0/24-jACCEPT#这句意思是转发来自192。168。0。0网段的通讯iptables-AFORWARD-d192.168.0.0/24-jACCEPT#这句意思是转发到达192。168。0。0网段的通讯iptables-AFORWARD-s!192.168.0.0/24-jDROP#这句意思是拒绝转发非192.168.0.0网段的通讯。
2、保存以上防火墙规则,以保证重启后还有效,输入命令:iptables-save/etc/sysconfig/iptables,这样,你的linux路由器应该就能跑起来了。
linux做路由器限速的实现:在linux中有专门限速的软件--tc,但TC的语法新手难以掌握,我们可以在防火墙上通过限定某个IP或某段IP在一秒内通过的数据包的数量来限速。
下面以限制192.168.0.2这个IP的网速为例说说,在桌面环境下打开/etc/syscofngi/iptables有没有发现,刚才的设定全记录在这个文件里,现在做的就在这个文件里添加规则就得了。
1、先要找到filter
2、在filter下面一行增加以下两行:
-AFORWARD-mlimit-d192.168.0.2--limit30/sec-jACCEPT#这句意思是限定每秒只转发30个到达192。168。0。2的数据包(约每秒45KB一个数据包是1.5KB)
-AFORWARD-d192.168.0.2-jDROP#这句作用是超过限制的到达192.168.0.2的数据包不通过)
3、路由器限速经过重启系统就实现了。
相关问答
Q1: Linux下Route 路由指令使用详解
linux route命令 用于显示和操作IP路由表 。
要实现 两个不同子网之间的通信 ,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现。
在Linux系统中,设置路由通常是为了解决以下问题:该Linux系统在一个局域网中,局域网中有一个网关,能够让机器访问Internet,那么就需要将这台机器的IP地址 设置为 Linux机器的默认路由 。
格式:
[root@linux ~]# route [-nee]
[root@linux ~]# route add [-net|-host] [网域或主机] netmask [mask] [gw|dev]
[root@linux ~]# route del [-net|-host] [网域或主机] netmask [mask] [gw|dev]
1、 查看相关参数:
-n :不要使用通讯协定或主机名称,直接使用 IP 或 port number;
-ee :使用更详细的资讯来显示
2、增加 (add) 、删除 (del) 路由的相关参数:
-net :表示后面接的路由为一个网域;
-host :表示后面接的为连接到单部主机的路由;
netmask :与网域有关,可以设定 netmask 决定网域的大小;
gw :gateway 的简写,后续接的是 IP 的数值喔,与 dev 不同;
dev :如果只是要指定由那一块网卡连线出去,则使用这个设定,后面接 eth0 等
设置默认路由
格式:route add default gw {IP-ADDRESS} {INTERFACE-NAME}
其中,
参数{IP-ADDRESS): 用于指定路由器(网关)的IP地址;
参数{INTERFACE-NAME}: 用于指定接口名称,如eth0。使用/sbin/ifconfig -a可以显示所有接口信息。
例:
添加到指定网络的路由规则
格式:route add -net {NETWORK-ADDRESS} netmask {NETMASK} dev {INTERFACE-NAME}
其中
参数{NETWORK-ADDRESS}: 用于指定网络地址
参数{NETMASK}: 用于指定子网掩码
参数{INTERFACE-NAME}: 用于指定接口名称,如eth0。
例:
屏蔽一条路由,设置到指定网络为不可达 ,避免在连接到这个网络的地址时程序过长时间的等待
格式:route add -net {NETWORK-ADDRESS} netmask {NETMASK} reject
例:
删除路由设置 ,参数指定的方式与route add相似。
格式:route del -net {NETWORK-ADDRESS} netmask {NETMASK} dev {INTERFACE-NAME}
格式:route del -net {NETWORK-ADDRESS} netmask {NETMASK} reject
例:
注意的是 ,直接在命令行下执行route命令来添加路由, 不会永久保存 ,当网卡重启或者机器重启之后,该路由就 失效 了; 要想永久保存 ,有如下方法:
1. 在/etc/rc.local里添加
2. 在/etc/sysconfig/network里添加到末尾
3. /etc/sysconfig/static-router :
any net x.x.x.x/24 gw y.y.y.y
Q2: 在LINUX系统下,如何使用SHell脚本,SSH登陆上路由器?
1.登陆linux系统linux命令路由器,打开终端命令。输入 rpm -qa |grep ssh 查找当前系统是否已经安装
2.如果没有安装SSH软件包linux命令路由器,可以通过yum 或rpm安装包进行安装
3、安装好了之后,就开启ssh服务。Ssh服务一般叫做 SSHD
4、命令行输入 service sshd start 可以启动 或者使用 /etc/init.d/sshd start
5、输入linux命令路由器:ssh 账号@IP地址即可。
比如:ssh oracle@192.168.10.13
然后按照提示输入密码. 一切无误则进入该远程主机.
首先linux命令路由器你用ssh-keygen生成公钥/私钥对,拷贝到路由器上。这样就可以免密码登录。
然后linux命令路由器你写个脚本,用here文档来登录路由器,并进行操作。
ssh 用户名@IP SSH
#这里写你需要的操作
SSH
关于linux命令路由器和linux 路由器的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






