半解析VyattaOFR快速启动手册
约定:蓝色代表一个章节,紫色代表章节里的小节,红色
代表可输入的命令,青蓝代表PC输出的显示. 因为node在字典里解释为节或节点,所以我理解为1个节
,类似于段落…他是通过’{}’把PC输出的显示括起来,
所以以下的都这样解释.. 配置树是由配置节组成,也就是上面的node. 本文作者Styx是一个刚接触linux和路由的小鸟,
但是他怀着无比的热情和动力在学习着,由于E文能力有
限在加上接触时间不久,请各位前辈师傅予以指点修正..~_^! 本文更象是一个笔记而不是完全套住手册里的东西,
很多东西按照国外前辈的说法很罗嗦. 本文出自:http://essoin. 本文可任意转载,但转载时请标明出处.
由于此文是在word里编辑所以在blog上无法显示图片和颜色效果,如有需要请留言联系.
1,Starting UP VyattaOFR有两中启动方式: Linve cd和安装进硬盘. Live cd VyattaOFR软件运行在机器的RAM上,它将系统
的部分写入RAM盘,配置文件存储在软盘设备或者TFTP中. 调整正确的BIOS光盘引导,并启动电脑,用live cd 引导
进系统. 登陆系统有两种用户模式: 以登陆名:root 密码:vyatta 的用户登陆模式,以这种
登陆模式登陆会使用Linux shell在这需要在
linuxshell 下运行xorpsh登陆route shell 模式. 以登陆名:vyatta 密码:vyatta 的用户登陆模式,以这
种登陆模式会直接进入route shell 模式. 假如只是试用系统,不需要存储改变你的设置,在这,你
可以跳过step. 但是你想要在LiveCD上存储改变你的配置,需要存储设
置在软盘设备上. 为了它,必须格式化软盘做为Vyatta的存储软体. 软盘设备访问/dev/fd0.被挂载在/mnt/floppy上. 存储配置具体步骤: 插入软盘 在router模式下运行命令:root@vyatta> init-floppy 系统准备在软盘接收配置文件,并存储拷贝配置
去/mnt/floppy/config/config.boot. 并在里面设置目录. 如果想将vyatta安装到硬盘请通过root和vyatta登陆 在linux shell下输入install-system执行硬盘安装. 简单解释一下硬盘安装: 首先问你是否清空硬盘上的所有资料 分区方式 选择安装磁盘 最后确认是否清空原磁盘数据 分区大小 (回车默认) 引导信息写到那个磁盘 (回车默认)
2,Taking a First Look 在route shell模式下 输入命令:root@vyatta>?将显示所有系统可用的命令. 通过输入configure进入设置模式 输入root@vyatta>configure进入设置模式. 进入系统设置模式,设置和删除一些系统信息. 在配置模式运行:root@vyatta#show 显示所有的通用设
置. 大多数情况,设置信息将会在屏幕上显示很长,屏幕将显
示”More”中断显示等待,按”回车”继续显示. 翻阅一页按”Space”键,或”b”. 按”q”退出显示. 退出配置模式输入命令:root@vyatta#exit root@vyatta> 显示版本信息:root@vyatta>show version
About Configuration 路由设置在unix系统上被分成目录等级制度,配置树是
由一串语句组成.有三种类型: 单节 多重节 字串属性,这设置值的一些特殊参数.
Configuration Nodes 从系统显示视图看,一个配置节是区别简单配置语句的,
例:1-1显示了包含语句属性的配置节,这个例子是SSH的
配置节.端口和协议语句指定了具体的属性值和参数…
配置节点由一对花括号({})组成开始和结束,假如节的
属性和参数需要被配置,它们是需要被花括号{}围来使
用的.
例1-1 一个配置节属性的语句 ssh { port:1-65534 protocol-version:[v1|v2|all] } 有些配置节是用花括号空括起来的,这意味这这个配置
节没做任何属性配置.
例:1-2 显示的是DHCP配置节,在这个节,启动了DNS服务
,WINS服务和中继语句并配置了节. 因为语句是被扩起来的所以能看出,花括号是从启动配
置节围住指定属性语句的值到停止结束语句.其他的配
置节(DNS,WINS,中继)没做一些配置语句,所以是空的.
Configuration Commands 当需要配置的时候,你将进入语句的开端,和执行以下通
用的配置命令: Set. 当你第一次启动的时候除了很少的一些自动配置
节,配置树几乎是空的.你必须为了你想要配置在路由上
的功能创建节.在这你能使用set命令. 你也能使用set命令创建和修改在节上的属性和语句的
一些值. 首先是你不能使用set命令修改多重配置节的标识.假如
多重节是不正确的标识,你需要去删除并且重新创建正
确的标识(使用set命令). Delete. 删除命令移除指定的配置节,假如你创建了错
误的节,你只需要删除它并关闭. 记住当你删除了配置节,所有节里面包含的都将被删除,
看这个例子,假如你使用了delete protocols 命令,你
将删除所有的协议和你的配置,包括RIP,BGP,OSPF,静态
路由和SNMP配置. Edit. Edit命令允许你编辑你需要的配置去节中,这能
存储打入明确了你明确配置的部分树,以下的例子是定
位在以太网接口配置树来配置以太网接口来编辑这个位
置. 假如他们是从配置树的顶端发布,作为结果的命令是很
简单的. [edit] root@vyatta#edit interfaces Ethernet Ethernet
eth0 [edit interfaces Ethernet eht0] root@vyatta#set description “my interface 1” [edit interface Ethernet eth0] root@vyataa#set address 172.16.0.65 prefix-
length 24 [edit interfaces Ethernet eth0] root@vyatta#show description:”\”my interface 1\” address 172.16.0.65 { prefix-length:24 } [edit interfaces Ethernet eth0] root@vyatta#commit ok 注意[edit]提示先于命令提示.[edit]提示你的状态和
配置树,在这个例子之前,你在配置和提示显示的根: [edit] 在例子的结束,你定位通过配置树去以太网接口eth0节,
在配置和提示显示根: [edit interfaces Ethernet eth0] 使用up或者exit命令移动上一节配置树. 使用top命令去移动到配置树的顶端. 注意这去定位到节,节必须存在在配置树;为了这,它必
须马上被创建.
Committing Configuration Changes 在是在VyattaOFR里重要的部分,配置改变在你输入
commit之前不做改变,使用commit命令. 以下的例子显示系统配置改变怎样被提交.在这个例子,
接口描述eth0删除ip地址172.16.0.40.注意系统删除系
统减小的标志是(“-”)和改变删除系统放大的标志(“
>”). [edit interfaces Ethernet eth0] Root@vyatta#show Description:”\”my interface 1\” Address 192.168.0.65 { Prefix-length:24 } [edit interfaces Ethernet eth0] root@vyatta# delete description deletiong: deleting: description:”my interface 1” ok [edit interfaces etherne eth0] root@vyatta#set address 172.16.0.63 prefix-
length 24 [edit interfaces Ethernet eth0] root@vyatta#show - description:”\”my interface 1\”” address 172.16.0.65 { prefix-length:24 } address 172.16.0.63 { prefix-length:24 } [edit interfaces Ethernet eth0] root@vyatta# [edit interfaces Ethernet eth0] root@vyatta#commit ok [edit interfaces Ethernet eth0] root@vyatta#show address 172.16.0.65 { prefix-length:24 { Address 172.16.0.63 { Prefix-length:24 } [edit interfaces Ethernet eth0] root@vyatta# 当你提交配置改变,你只能从提交或放弃改变配置模式
跳出. . 去提交确认改变,在提示符输入commit . 去放弃你的改变退出配置模式,输入exit discard退
出到最开始的配置模式层次.
Configuring Basic System Information 在这部分,你能配置一些基本的系统信息,你将输入主机
名,域,和缺省的网关. 当你结束配置,接口将被设置在图1-1 图1-1 缺省的配置
这顺次的设置主机名:R1,域名mydomain.com,缺省网
关:172.16.0.254 root@vyatta# set system host-name R1 [edit] root@vyatta# set system domain-name mydomain.com [edit] root@vyatta# set system gateway-address
172.16.0.254 [edit] root@vyatta# commit ok [edit] root@R1# 注意那个命令提示改变了新的主机名. Configuring Ethernet Interfaces 在Vyatta OFR路由,大部分配置能运用在任意的物理接
口,或者虚拟接口(vif),那一个是为了物理接口创建的
逻辑接口.当路由被启动,他自动探测获得物理接口并创
在上面创建驱动,为这些配置节,看例子,在系统上有两
个以太网接口,路由自动为eth0和eht1创建配置节. 以太网vifs只有当使用802.1Q时VLAN才去被支持.在基
本的以太网配置中,为简单的网络拓扑尝试赋值,它将常
常被简单的和适当的赋予到物理借口的ip地址上. 这里每一个物理接口是能分配多个地址,如果你想要在
你的一些物理接口上创建多个网络 (在这,假如你想要
去使用多重地址,但不是VLANS),在最初的接口下面简单
的创建多重地址设置节. 顺序应用IP地址直接到两个以太网接口为系统配置eth0
和eth1.(接口被自动创建在系统启动开始的时.)每一个
IP地址是直接加到接口上的. 当配置结束,接口将被设置在图1-2.
设置以太网IP地址 root@R1#set interfaces Ethernet eth0 address
172.168.0.65 prefix-length 24 [edit] root@R1#set interfaces Ethernet eth1 address
10.10.30.65 prefix-length 24 [edit] root@R1#commit ok root@R1#show interfaces loopback lo { } Ethernet eth0 { Address 172.16.0.65 { Prefix-length: 24 } } Ethernet eth1 { Address 10.10.30.65 { Prefix-length: 24 } [edit] root@R1
Configuring VLANS 在vyatta路由,大多数配置能直接适用到接口,或者虚拟
接口(vif).虚拟接口有自己的设置节,那一个是从属接
口的节. 在以太网接口上,一个vif是总是一个VLAN接口,它用来
标识VLAN的ID,Vif标识去使用802.1QVLAN标志.只有在
以太网接口上设置了vifs才能得到标志包. 相同的物理接口,没一个vif能得到多重的地址分配给它
.假如你使用802.1QVLANS, 在物理接口和分配IP地址到
vif上创建vif设置节.假如你没有使用802.1Q,但你还想
要多重网络在一些物理接口(在这,你想要去使用多重地
址,但没有VLANS),简单的在创建物理接口下面创建多重
地址设置节,没有使用vifs. 这顺序的设置了VLAN接口在路由R1---vif40 在
eth1.vif标识VLAN ID和vif连接到VLAN40. 完成配置后,接口将被配置在图1-3
VLAN configuration [edit] root@R1#set interfaces Ethernet eth1 vif 40
address 10.10.40.65 prefix-length 24 [edit] root@R1#show interfaces Ethernet Ethernet eth0 { Address 172.16.0.65 { Prefix-length: 24 } } Ethernet eth1 { Address 10.10.30.65 { Prefix-length: 24 } Vif 40 { Address 10.10.40.65 { Prefix-length: 24 } } } [edit] root@R1# 当你涉及到vif网络接口命令(设置以太网借口和显示以
太网借口)可以去参考以太网int-name vif vif-id ,在
以下的例子:
Show interfaces Ethernet eth1 vif 40 当你设计一些vif的其他命令,参考int-name.vif-id,在
以下的例子: Set protocols rip interface eth1.40 address
10.10.40.65 Configuring System Service 在这部分,设置一些基本的系统信息.你将 .开启 Telnet 访问 .开启 SSH 访问 这时复习一下commit 存储配置. 配置完成后,服务将被设置在图1-1 图1-4 基本的系统服务
打开telnet访问 创建telnet服务将允许你远程访问路由,telnet在主机
和路由之间通过不加密的数据通信.假如使用SSH,我推
荐你关闭telnet访问. root@R1#set service telnet [edit] root@R1#commit ok [edit] root@R1# 打开SSH访问 打开SSH服务将允许使用加密的协议远程访问管理路由
器. root@R1# set service ssh `ssh' is ambiguous. Possible completions: <[Enter]> Execute this command port Port for SSH service protocol-version SSH version { Enter text on multiple
lines root@R1# set service ssh protocol-version all [edit] root@R1# set service ssh port 22 [edit] root@vyatta# commit OK [edit] root@vyatta# 假如你有软盘设备想要去存储这个配置,使用以下命令: root@R1#save /mnt/floppy/config/config.boot ok root@R1#
Configuring NAT 设置简单的NAT 使内网通过网关vyatta分享上网. root@R1# create service nat rule 1 (创建新的路
由规则1) [edit] root@R1# edit service nat rule 1 (编辑1路由规则
) [edit service nat rule 1] root@R1# set type source [edit service nat rule 1] root@R1# set translation-type masquerade (指定
NAT转换的模式为隐藏内网模式,地址伪装。) [edit service nat rule 1] root@R1# set outbound-interface eth0 (指定外网
口为eth0) [edit service nat rule 1] root@R1# set protocols all (指定所有协议) [edit service nat rule 1] root@R1# set source network 192.168.56.0/24 (源
网络为192.168.56.0网段的所有地址) [edit service nat rule 1] root@R1# set destination network 0.0.0.0/0 (目
的网络为任意地址) [edit service nat rule 1] root@R1# top [edit] root@R1# commit OK [edit]
Configuring Routing Protocols
在这部分,创建简单的路由规则,同时做以下设置: .静态路由 .简单路由规则 .RIP .BGP .OSPF 静态路由 这顺序的设置了静态路由R1为网络11.0.0.0/8 到
172.16.0.26路由.配置完成将设置成如下图. 图1-5 静态路由配置
设置静态路由 root@R1#set protocols static route 11.0.0.0/8
next-hop 172.16.0.26 [edit] root@R1#commit ok [edit] root@R1#show protocols static { route 11.0.0.0/8 { next-hop: 172.16.0.26 } } [edit] root@R1#
简单的路由规则 路由规则允许你去使用默认的路由协议决定路由那个入
口通过路由表路由到另外的那一个出口.看这个例子,
出口策略能被应用RIP 这种策略是为了重新分配由另一
个路由得来的协议.在OSPF,这部分你为在分布路由定义
两个规则,当你定义了路由策略,指定了那个准则,假如
匹配,将产生指定的路由协议.并非每个标准都适应每个
路由协议. 假如你想要路由协议在这释放,例如ROP,宣布连接的接
口必须为在分配连接路由线定义一个协议. 假如你想要去重新分配静态路由在这设置策略,在这释
放,你必须详细的为静态路由出口和直通路由定义规则,
每个定义的规则必须使用指定的入口和出口应用到个别
的路由协议. 设置静态路由出口规则 在这设置创建规则EXPORT_STATIC.这个规则直接路由协
议去重新分配所有的静态路由. root@R1#set policy policy-statement
EXPORT_STATIC term 10 from protocol connected [edit] root@R1#commit ok [edit] root@R1@show policy policy { policy-statement “EXPORT_STATIC” { term 10 { from { protocol: “static” } Then { Action:”accept” } } } [edit] root@R1#
|