📄 rip.tp
字号:
/* $XORP: xorp/etc/templates/rip.tp,v 1.46 2006/08/08 20:12:31 pavlin Exp $ *//* * RIP attribute descriptions */protocols { rip { targetname: txt = "rip"; interface @: txt { vif @: txt { address @: ipv4 { metric: u32 = 1; horizon: txt = "split-horizon-poison-reverse"; disable: toggle = false; enabled: bool; /* %deprecated */ passive: bool = false; accept-non-rip-requests: bool = true; accept-default-route: bool = true; advertise-default-route: bool = true; route-timeout: u32 = 180; route-expiry-secs: u32; /* %deprecated */ deletion-delay: u32 = 120; route-deletion-secs: u32; /* %deprecated */ triggered-delay: u32 = 3; triggered-jitter: u32 = 66; update-interval: u32 = 30; update-jitter: u32 = 16; request-interval: u32 = 30; table-request-secs: u32; /* %deprecated */ interpacket-delay: u32 = 50; interpacket-delay-msecs: u32; /* %deprecated */ authentication { type: txt; /* %deprecated */ password: txt; /* %deprecated */ simple-password: txt = ""; md5 @: u32 { password: txt = ""; start-time: txt = ""; end-time: txt = ""; } } } } } import: txt; export: txt; }}policy { policy-statement @: txt { term @: txt { from { nexthop4: ipv4range; metric: u32range; tag: u32range; } to { nexthop4: ipv4range; metric: u32range; tag: u32range; } then { nexthop4: ipv4; metric: u32; tag: u32; } } }}/* * RIP attribute manipulation. */protocols { rip { %modinfo: provides rip; %modinfo: depends rib; %modinfo: depends policy; %modinfo: path "rip/xorp_rip"; %modinfo: default_targetname "rip"; %modinfo: status_method xrl "$(rip.targetname)/common/0.1/get_status->status:u32&reason:txt"; %modinfo: shutdown_method xrl "$(rip.targetname)/common/0.1/shutdown"; %help: short "RIP configuration"; %mandatory: $(@.targetname); targetname { %user-hidden: "XRL target name"; %help: short "XRL target name"; %set:; } interface @ { %help: short "Interface in RIP domain"; vif @ { %help: short "Vif in RIP domain"; address @ { %help: short "Address on vif used for RIP"; %create: xrl "$(rip.targetname)/rip/0.1/add_rip_address?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)"; %delete: xrl "$(rip.targetname)/rip/0.1/remove_rip_address?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)"; %activate: xrl "$(rip.targetname)/rip/0.1/set_rip_address_enabled?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&enabled:bool=`~$(@.disable)`"; disable { %help: short "Disable RIP on address"; %create:; %set: xrl "$(rip.targetname)/rip/0.1/set_rip_address_enabled?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&enabled:bool=`~$(@)`"; } enabled { %deprecated: "Statement 'enabled: true/false' is replaced with 'disable: false/true'"; %set: xrl "$(rip.targetname)/rip/0.1/set_rip_address_enabled?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&enabled:bool=$(@)"; %get: xrl "$(rip.targetname)/rip/0.1/rip_address_enabled?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)->enabled:bool"; %help: short "Enable RIP on address"; } metric { %allow-range: $(@) "0" "16" %help: "Cost metric added to routes received on address"; %set: xrl "$(rip.targetname)/rip/0.1/set_cost?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&cost:u32=$(@)"; %get: xrl "$(rip.targetname)/rip/0.1/cost?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)->cost:u32"; %help: short "Cost metric added to routes received on address"; } horizon { %allow: $(@) "none" %help: "No horizon type"; %allow: $(@) "split-horizon" %help: "Split horizon"; %allow: $(@) "split-horizon-poison-reverse" %help: "Split horizon with poisoned reverse"; %set: xrl "$(rip.targetname)/rip/0.1/set_horizon?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&horizon:txt=$(@)"; %get: xrl "$(rip.targetname)/rip/0.1/horizon?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)->horizon:txt"; %help: short "Horizon type applied to announced routes"; } passive { %set: xrl "$(rip.targetname)/rip/0.1/set_passive?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&passive:bool=$(@)"; %get: xrl "$(rip.targetname)/rip/0.1/passive?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)->passive:bool"; %help: short "Do not transmit RIP packets"; } accept-non-rip-requests { %set: xrl "$(rip.targetname)/rip/0.1/set_accept_non_rip_requests?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&accept:bool=$(@)"; %get: xrl "$(rip.targetname)/rip/0.1/accept_non_rip_requests?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)->accept:bool"; %help: short "Accept RIP requests from non-RIP port"; } accept-default-route { %set: xrl "$(rip.targetname)/rip/0.1/set_accept_default_route?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&accept:bool=$(@)"; %get: xrl "$(rip.targetname)/rip/0.1/accept_default_route?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)->accept:bool"; %help: short "Accept default route from RIP neighbor"; } advertise-default-route { %set: xrl "$(rip.targetname)/rip/0.1/set_advertise_default_route?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&advertise:bool=$(@)"; %get: xrl "$(rip.targetname)/rip/0.1/advertise_default_route?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)->advertise:bool"; %help: short "Advertise default route to RIP neighbors"; } route-timeout { %set: xrl "$(rip.targetname)/rip/0.1/set_route_timeout?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&t_secs:u32=$(@)"; %get: xrl "$(rip.targetname)/rip/0.1/route_timeout?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)->t_secs:u32"; %help: short "Route expiration time (sec)"; } route-expiry-secs { %deprecated: "Statement 'route-expiry-secs' is replaced with 'route-timeout'"; %set: xrl "$(rip.targetname)/rip/0.1/set_route_timeout?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&t_secs:u32=$(@)"; %get: xrl "$(rip.targetname)/rip/0.1/route_timeout?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)->t_secs:u32"; %help: short "Route expiration interval in the absence of updates"; } deletion-delay { %set: xrl "$(rip.targetname)/rip/0.1/set_deletion_delay?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&t_secs:u32=$(@)"; %get: xrl "$(rip.targetname)/rip/0.1/deletion_delay?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)->t_secs:u32"; %help: short "Delay before expired routes are deleted (sec)"; } route-deletion-secs { %deprecated: "Statement 'route-deletion-secs' is replaced with 'deletion-delay'"; %set: xrl "$(rip.targetname)/rip/0.1/set_deletion_delay?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&t_secs:u32=$(@)"; %get: xrl "$(rip.targetname)/rip/0.1/deletion_delay?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)->t_secs:u32"; %help: short "Route deletion interval after advertised as unreachable"; } triggered-delay { %set: xrl "$(rip.targetname)/rip/0.1/set_triggered_update_delay?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)&t_secs:u32=$(@)"; %get: xrl "$(rip.targetname)/rip/0.1/triggered_update_delay?ifname:txt=$(interface.@)&vifname:txt=$(vif.@)&addr:ipv4=$(address.@)->t_secs:u32"; %help: short "Delay before sending repeated triggered update (sec)"; }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -