vyatta 软路由负载均衡配置

vyatta软路由配置

Vyatta是基于Linux的路由器、防火墙、VPN。凭借它开源软件的性能、可靠性和专有联网设备特性,完全可以构筑起企业级网络。
Vyatta能帮你:
完全胜任大规模BGP环境
把小型办公网接入Internet
利用状态检测防火墙保护你的网络安全
用VPN技术安全地接入到你的办公网
使用该软件适应从DSL到10Gbps容量
避免专用网络设备更新费用
利用Xen、VMWare运行虚拟网络环境
在数据中心环境,添加网络和安全性到刀片服务器
提供基于网络的,可管理的完全服务
增加网络冗余
建立你自己的品质一流的办公网解决方案。


配置文件说明

vyatta@vyatta# run show configuration 
interfaces { #配置接口
    ethernet eth1 { #配置eth1接口
        address 121.8.124.10/24 #配置eth1接口的IP
        hw-id 00:1c:25:e3:ca:09 #默认即可,是MAC地址
    }
    ethernet eth2 { #配置eth2接口
        duplex auto
        hw-id 00:1b:21:69:63:77
        pppoe 0 { #配置eth2的ADSL
            default-route auto #使用pppoe为默认网关
            password **************** #pppoe密码
            user-id username #pppoe用户
        }
    }
    ethernet eth3 { #配置eth3接口
        address 192.168.4.1/24 #配置eth3的IP
        hw-id 00:1b:21:5c:f9:bc
    }
    ethernet eth4 { #配置eth4接口
        address 192.168.1.1/24 #配置eth4的IP
        hw-id 00:1b:21:5c:f9:bb
    }
    loopback lo {
    }
}
load-balancing { #负载均衡配置
    wan {
        interface-health eth1 { #用来负载的资源1
            failure-count 1
            nexthop 121.8.124.9 #下一跳
        }
        interface-health pppoe0 { #用来负载的资源2
            failure-count 1
            nexthop dhcp #pppoe的IP是动态的,所以是dhcp
            test 1 { #注意,不配置此项的话,pppoe的负载均衡无法使用
                target 8.8.8.8 #检查用的IP
                type ping #检查方式为ping
            }
        }
        rule 1 { #被负载的策略
            destination { 
                address !192.168.0.0/16 #这段的意思是目标地址不包含192.168.0.0/16这个子网,如果不配置此项,负载均衡后无法联系其它子网。
            }
            inbound-interface eth4 #被负载的接口
            interface eth1 { #使用哪个负载接口(即选择出口)
                weight 1 #权重
            }
            interface pppoe0 {
                weight 1
            }
        }
        rule 2 {
            destination {
                address !192.168.0.0/16
            }
            inbound-interface eth3
            interface eth1 {
                weight 1
            }
            interface pppoe0 {
                weight 1
            }
        }
    }
}
protocols { #配置协议
    static { #配置静态路由
        route 192.168.2.0/24 { #目标为192.168.2.0/24的网络
            next-hop 192.168.1.8 { #下一跳为192.168.1.8
            }
        }
        route 192.168.3.0/24 {
            next-hop 192.168.1.8 {
            }
        }
    }
}
service { #配置服务
    dhcp-server { #配置DHCP服务器
        disabled false
        shared-network-name kooland { #网络名
            authoritative disable
            subnet 192.168.1.0/24 { #子网
                default-router 192.168.1.1 #客户端获得的网关地址
                dns-server 121.8.124.11 #客户端获得的DNS
                dns-server 124.172.232.161
                start 192.168.1.50 { #起始IP
                    stop 192.168.1.250 #结束IP
                }
            }
        }
    }
    dns { #配置DNS服务器
        forwarding { #转发
            cache-size 150 #缓存大小
            listen-on eth4 #侦听在哪个接口
            name-server 121.8.124.11 #转发到哪个DNS
            name-server 124.172.232.161
        }
    }
    https #https web管理
    nat { #NAT网络地址转换
        rule 1 { #策略1
            outbound-interface eth1 #出口为eth1
            source { #源
                address 192.168.0.0/16 #源地址为192.168.0.0/16这个子网
            }
            type masquerade #类型为伪装,即pat
        }
        rule 2 {
            outbound-interface pppoe0
            source {
                address 192.168.0.0/16
            }
            type masquerade
        }
    }
    ssh { #开启ssh服务
        port 22
    }
}
system {
    host-name vyatta
    login {
        user vyatta {
            authentication {
                encrypted-password ****************
                plaintext-password ****************
            }
        }
    }
    name-server 121.8.124.11
    name-server 124.172.232.161
    ntp-server 0.vyatta.pool.ntp.org
    package {
        auto-sync 1
        repository community {
            components main
            distribution stable
            url http://packages.vyatta.com/vyatta
        }
        repository debian {
            components "main non-free contrib"
            distribution stable
            url http://mirrors.163.com/debian/
        }
    }
    syslog {
        global {
            facility all {
                level notice
            }
            facility protocols {
                level debug
            }
        }
    }
    time-zone GMT-8
}

 


配置文件示例

vyatta@vyatta# run show configuration 
interfaces {
    ethernet eth1 {
        address 121.8.124.10/24
        hw-id 00:1c:25:e3:ca:09
    }
    ethernet eth2 {
        duplex auto
        hw-id 00:1b:21:69:63:77
        pppoe 0 {
            default-route auto
            password ****************
            user-id username
        }
    }
    ethernet eth3 {
        address 192.168.4.1/24
        hw-id 00:1b:21:5c:f9:bc
    }
    ethernet eth4 {
        address 192.168.1.1/24
        hw-id 00:1b:21:5c:f9:bb
    }
    loopback lo {
    }
}
load-balancing {
    wan {
        interface-health eth1 {
            failure-count 1
            nexthop 121.8.124.9
        }
        interface-health pppoe0 {
            failure-count 1
            nexthop dhcp
            test 1 {
                target 8.8.8.8
                type ping
            }
        }
        rule 1 {
            destination {
                address !192.168.0.0/16
            }
            inbound-interface eth4
            interface eth1 {
                weight 1
            }
            interface pppoe0 {
                weight 1
            }
        }
        rule 2 {
            destination {
                address !192.168.0.0/16
            }
            inbound-interface eth3
            interface eth1 {
                weight 1
            }
            interface pppoe0 {
                weight 1
            }
        }
    }
}
protocols {
    static {
        route 192.168.2.0/24 {
            next-hop 192.168.1.8 {
            }
        }
        route 192.168.3.0/24 {
            next-hop 192.168.1.8 {
            }
        }
    }
}
service {
    dhcp-server {
        disabled false
        shared-network-name kooland {
            authoritative disable
            subnet 192.168.1.0/24 {
                default-router 192.168.1.1
                dns-server 121.8.124.11
                dns-server 124.172.232.161
                start 192.168.1.50 {
                    stop 192.168.1.250
                }
            }
        }
    }
    dns {
        forwarding {
            cache-size 150
            listen-on eth4
            name-server 121.8.124.11
            name-server 124.172.232.161
        }
    }
    https
    nat {
        rule 1 {
            outbound-interface eth1
            source {
                address 192.168.0.0/16
            }
            type masquerade
        }
        rule 2 {
            outbound-interface pppoe0
            source {
                address 192.168.0.0/16
            }
            type masquerade
        }
    }
    ssh {
        port 22
    }
}
system {
    host-name vyatta
    login {
        user vyatta {
            authentication {
                encrypted-password ****************
                plaintext-password ****************
            }
        }
    }
    name-server 121.8.124.11
    name-server 124.172.232.161
    ntp-server 0.vyatta.pool.ntp.org
    package {
        auto-sync 1
        repository community {
            components main
            distribution stable
            url http://packages.vyatta.com/vyatta
        }
        repository debian {
            components "main non-free contrib"
            distribution stable
            url http://mirrors.163.com/debian/
        }
    }
    syslog {
        global {
            facility all {
                level notice
            }
            facility protocols {
                level debug
            }
        }
    }
    time-zone GMT-8
}

Cisco模拟器for Linux 1.1

呵呵,其实这是我以前学习Cisco时的小作品了,现在发布,愿能方便大家。


基于Dynamips及Dynagen,pemu制作,包含Cisco Router 3660,3620+交换模块,PIX。除非是Cisco内部模拟器,我想不会有比这个更好的了。

继续阅读 »

  1. 1