Vyatta里进行端口映射

一、在NAT里设置转发

vyatta@vyatta# show service nat rule 30
destination {
     port 22222
}
inbound-interface pppoe0
inside-address {
     address 192.168.1.186
}
protocol tcp
type destination
[edit]
vyatta@vyatta#

二、防火墙里放行

vyatta@vyatta# show firewall name OnWAN rule 15
action accept
destination {
     port 22222
}
protocol tcp
[edit]
vyatta@vyatta#

Vyatta限速测试3

今天接着测试vyatta的限速。

我把匹配的地址改为192.168.0.5/32之后,限速生效了,0.5的下载速度大约在180k,其它的IP下载速度大约在40k,当我把匹配的IP改为192.168.0.5/24后,限速又不生效了。

不知道vyatta的out和in是怎么定义的,如果它是如下所定义的话:

download: internet ===> (in)Vyatta(out) ===> client
up: internet <=== (out)Vyatta(in) <=== client

那么当我在LAN接口的out方向做限速时,匹配的IP位置就应该是destination而非source,但是我在官方文档上所看到的实例以及网上一些文章都指定为source,不得其解。
根据上面的定义,是不是可以在WAN接口的out方向做限速,从而达到做上传限速呢?

另外vyatta 5.0.2也开始支持in的限速了,类型是traffic-limiter,不过它没有default class,有时间用它在WAN接口上测试一下下载的限速。

vyatta@vyatta# show qos-policy
 traffic-shaper ALL {
     bandwidth 2mbit
     class 10 {
         bandwidth 2mbit
         burst 3k
         ceiling 2mbit
         match IP5 {
             ip {
                 destination {
                     address 192.168.0.5/32
                 }
             }
         }
     }
     default {
         bandwidth 512kbit
         burst 1k
         ceiling 512kbit
     }
 }
[edit]
vyatta@vyatta# show interfaces
 ethernet eth0 {
     address 192.168.0.2/24
     hw-id 00:05:5d:72:ed:**
     qos-policy {
         out ALL
     }
 }
 ethernet eth1 {
     duplex auto
     hw-id 00:05:5d:72:ed:**
     pppoe 1 {
         default-route auto
         password *********
         user-id ********
     }
 }
[edit]
vyatta@vyatta#

Vyatta又不能限速

昨晚我在实验环境中测试vyatta的限速成功了,今天中午我把方法应用到我的工作环境中去,却发现不能限速。
工作环境的限速规则如下:

vyatta@vyatta# show qos-policy
 traffic-shaper ALL {
     bandwidth 2mbit
     class 10 {
         bandwidth 2mbit
         burst 3k
         ceiling 2mbit
         match IP5 {
             ip {
                 destination {
                     address 192.168.0.5/24
                 }
             }
         }
     }
     default {
         bandwidth 512kbit
         burst 1k
         ceiling 512kbit
     }
 }
[edit]
vyatta@vyatta# show interfaces
 ethernet eth0 {
     address 192.168.0.2/24
     hw-id 00:05:5d:72:ed:**
     qos-policy {
         out ALL
     }
 }
 ethernet eth1 {
     duplex auto
     hw-id 00:05:5d:72:ed:**
     pppoe 1 {
         default-route auto
         password **********
         user-id **********
     }
 }
[edit]
vyatta@vyatta#

vyatta使用手记:更新3322.org

以前用过3322.org的客户端、lynx、w3m来更新3322.org,然而vyatta没有lynx、w3m,所以就用搜到的另一段脚本来更新3322.org。

 

把下面这段脚本放到一个命名为ddns的脚本文件里去

#!/bin/bash
wget -q -O- ‘http://username:password@members.3322.org/dyndns/update?system=dyndns&hostname=domainname.3322.org’
 

然后加上可执行属性,再扔进/etc/ppp/ip-up.d/目录下去就可以了。

Vyatta限速测试实验2

今天接着做实验,因为前面在WAN接口做限速的各种设置都测试过了,所以现在改在LAN接口,结果如下:

序号 接口 类型 方向 内网IP IP位置 速度 备注
1 LAN traffic-shaper out 1.2 destination 55k
2 LAN traffic-shaper out 1.2 source 110k

这就意味着限速成功,2号实验速度为110k,原因是它没有匹配class 10规则,所以就应用了default的规则。

下面是1号实验的相关配置

interfaces {
      ethernet eth0 {
          address 192.168.1.1/24
          duplex auto
          hw-id 00:0c:29:98:9e:cf
          qos-policy {
              out OFFICE
          }
          speed auto
      }
      ethernet eth1 {
          address 192.168.8.16/24
          duplex auto
          hw-id 00:0c:29:98:9e:d9
          speed auto
      }
  }
  protocols {
      static {
      }
  }
  qos-policy {
      traffic-shaper OFFICE {
          bandwidth 2mbit
          class 10 {
              bandwidth 512kbit
              burst .5k
              ceiling 512kbit
              match IP2 {
                  ip {
                      destination {
                          address 192.168.1.2/24
                      }
                  }
              }
              queue-type fair-queue
          }
          default {
              bandwidth 1mbit
              burst 1k
              ceiling 1mbit
              queue-type fair-queue
          }
      }
  }

神异的ROS限速

前几天我在几个环境下测试ROS的限速功能,可是没有一次成功,到论坛里发帖也没有一个人回复。后来又开始测试vyatta的限速功能,却发现它的限速规则要应用到LAN接口才能生效,郁闷哪…

就这么在失败的结果中坚持着测试,然而刚才却奇异地可以限速了,趁还没有失效之前,赶紧把配置的图截下来,这回看你向哪儿跑。

ros1

ros2

Vyatta限速实验

首先在vmware上新建了一个虚拟机,双网卡,eth0连接到vmnet2(另一台xp虚拟机也连接到vmnet2),eth1设置为桥接连到实际网络,测试网络结构大约为:

intelnet <===> gw(.2) <===192.168.8.0/24===> (.16)vyatta(.1) <===192.168.1.0/24===> (.2)XP虚拟机

 interfaces {
      ethernet eth0 {
          address 192.168.1.1/24
          duplex auto
          hw-id 00:0c:29:98:9e:cf
          speed auto
      }
      ethernet eth1 {
          address 192.168.8.16/24
          duplex auto
          hw-id 00:0c:29:98:9e:d9
          qos-policy {
              out OFFICE
          }
          speed auto
      }

  .
  .
  .

  }

  qos-policy {
      traffic-limiter OFFICEIN {
          class 10 {
              bandwidth 512Kbit
              burst 15k
              match IP5 {
                  ip {
                      source {
                          address 192.168.1.2/24
                      }
                  }
              }
              priority 20
          }
      }
      traffic-shaper OFFICE {
          bandwidth 2048kbit
          class 10 {
              bandwidth 512kbit
              burst 15k
              ceiling 512kbit
              match IP2 {
                  ip {
                      source {
                          address 192.168.1.2/24
                      }
                  }
              }
              queue-type fair-queue
          }
          default {
              bandwidth 1024kbit
              burst 15k
              ceiling 1024kbit
              queue-type fair-queue
          }
      }
  }
  service {
      https
      nat {
          rule 1 {
              destination {
                  address 0.0.0.0/0
              }
              outbound-interface eth1
              protocol all
              source {
                  address 192.168.1.0/24
              }
              type masquerade
          }
      }
  }
  system {
      gateway-address 192.168.8.2
      host-name vyatta

  .
  .
  .

      name-server 202.96.128.166
      name-server 202.96.128.143

  .
  .
  .

  }

以上内容是下面第5个测试环境的配置
下面是测试结果(没有设置ceiling)

序号 类型 接口 方向 IP位置 速度
1 traffic-shaper WAN out source 2.6m
2 traffic-shaper WAN out dest 2.6m
3 traffic-limiter WAN in dest 4.6m
4 traffic-limiter WAN in source 4.6m

(设置了ceiling)
5 traffic-shaper WAN out source 2.6m
6 traffic-shaper WAN out dest 2.6m

也就是说,限速不成功。

Vyatta使用手记:启用PPTP Service

得益于Vyatta的高条理性,无需列出步骤,仅帖出相关配置:

  .
  .
  .

  vpn {
      pptp {
          remote-access {
              authentication {
                  local-users {
                      username ****** {
                          password **********
                      }
                  }
                  mode local
              }
              client-ip-pool {
                  start 192.168.0.126
                  stop 192.168.0.129
              }
          }
      }
  }

  .
  .
  .

Vyatta使用手记:使用ADSL共享上网

安装和基本配置很简单,也可以找到相关的两篇中文资料,所以就没有列出配置。

PCI猫要使用set interfaces adsl来设置拔号,而外置猫则使用set interfaces ethx pppoe来设置。下面是ADSL共享上网的配置,看了配置就会设置了,所以也就没有列出详细步骤:

interfaces {

  .
  .
  .

      ethernet eth1 {
          duplex auto
          hw-id 00:05:5d:72:ed:29
          pppoe 1 {
              default-route auto
              mtu 1492
              name-server auto
              password ************
              user-id ***********
          }
          speed auto
      }
  .
  .
  .

  }

  service {
      https
      nat {
          rule 10 {
              outbound-interface pppoe1
              source {
                  address 192.168.0.0/24
              }
              type masquerade
          }
      }
      ssh {
          allow-root false
          port 22
          protocol-version v2
      }
  }
  .
  .
  .

接下来尝试一下设置限速和防火墙规则。