Skip to content

Latest commit

 

History

History

rip

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Configuration,and Test RIP

Configuration

RIP daemon must be enabled before testing. To do that, ripd=yes must be inserted into /etc/frr/daemons and then restart frr
Note:
Implemented parameters are referred to https://docs.frrouting.org/en/latest/ripd.html.

Test Requests

Description:\

Base urls in this project are based on two types :
1.http://localhost:8000/rip/Basic/
2.http://localhost:8000/rip/advanced/
/basic must be configured to run rip instances
/advanced is optional \

Basic Commands Section

Exp1: Insert

$ curl -X POST -d 'network_addr=1.1.1.1&network_prefix=24&network_interface_name=ens192&version=1' http://localhost:8000/rip/basic/

{"network_addr":"1.1.1.1","network_prefix":24,"network_interface_name":"ens192","version":1}

test# show running-config
Building configuration...

Current configuration:
!
frr version 7.3.1-MyOwnFRRVersion
frr defaults traditional
service integrated-vtysh-config
!
router rip
 network 1.1.1.1/24
 network ens192
 version 1
!
line vty
!
end
test#

Exp2: Update

curl -X PUT -d 'version=2' http://localhost:8000/rip/basic/detail/1/

{"network_addr":"1.1.1.1","network_prefix":24,"network_interface_name":"ens192","version":2}

test# show running-config
Building configuration...

Current configuration:
!
frr version 7.3.1-MyOwnFRRVersion
frr defaults traditional
hostname test
log syslog informational
no ip forwarding
no ipv6 forwarding
service integrated-vtysh-config
!
router rip
 network 1.1.1.1/24
 network ens192
 version 2
!
line vty
!
end
test#


Exp3: Get Information

$ curl -X GET http://localhost:8000/rip/basic/detail/1/

{"network_addr":"1.1.1.1","network_prefix":24,"network_interface_name":"ens192","version":2}

or

$ curl -X GET http://localhost:8000/rip/basic/

Exp4: Delete

curl -X DELETE http://localhost:8000/rip/basic/

###Advanced Commands Section

Exp1: Insert

$ curl -X POST -d 'neighbor=2.2.2.2&passive_interface=ens160&allow_ecmp=True&default_info_originate=True&redistribute=ospf&default_metric=3&distance=10&distribute_list_perfix_in_out=in&timers_update_time=10&timers_time_out=20&timers_garbage_time=30&interface_name=ens192&interface_auth_key_chain=test&interface_auth_string=&interface_auth_mode_md5=True&interface_auth_mode_text=&interface_receive_version=1&interface_send_version=1' http://localhost:8000/rip/advanced/

{"neighbor":"2.2.2.2","passive_interface":"ens160","allow_ecmp":true,"default_info_originate":true,"redistribute":"ospf","default_metric":3,"distance":10,"distribute_list_perfix_in_out":"in","timers_update_time":10,"timers_time_out":20,"timers_garbage_time":30,"interface_name":"ens192","interface_auth_key_chain":"test","interface_auth_mode_md5":"True","interface_auth_mode_text":null,"interface_receive_version":"1","interface_send_version":"1"}

Current configuration:
!
frr version 7.3.1-MyOwnFRRVersion
frr defaults traditional
hostname test
log syslog informational
no ip forwarding
no ipv6 forwarding
service integrated-vtysh-config
!
interface ens192
 ip rip authentication key-chain test
 ip rip authentication mode md5
 ip rip receive version 1
 ip rip send version 1
!
router rip
 allow-ecmp
 default-information originate
 default-metric 3
 distance 10
 neighbor 2.2.2.2
 passive-interface ens160
 redistribute ospf
 timers basic 10 20 30
 distribute-list prefix in
!
line vty
!
end
test#

Exp2: Update

$ curl -X PUT -d 'allow_ecmp=False&default_info_originate=False&default_metric=5&distance=20&distribute_list_perfix_in_out=out&timers_update_time=30&timers_time_out=40&timers_garbage_time=60&interface_name=ens192&interface_auth_key_chain=test_new&interface_auth_string=&interface_auth_mode_md5=False&interface_auth_mode_text=True&interface_receive_version=2&interface_send_version=2' http://localhost:8000/rip/advanced/detail/1/

{"neighbor":"2.2.2.2","passive_interface":"ens160","allow_ecmp":false,"default_info_originate":false,"redistribute":"ospf","default_metric":5,"distance":20,"distribute_list_perfix_in_out":"out","timers_update_time":30,"timers_time_out":40,"timers_garbage_time":60,"interface_name":"ens192","interface_auth_key_chain":"test_new","interface_auth_mode_md5":"False","interface_auth_mode_text":"True","interface_receive_version":"2","interface_send_version":"2"}

test# show running-config
Building configuration...

Current configuration:
!
frr version 7.3.1-MyOwnFRRVersion
frr defaults traditional
hostname test
log syslog informational
no ip forwarding
no ipv6 forwarding
service integrated-vtysh-config
!
interface ens192
 ip rip authentication key-chain test_new
 ip rip authentication mode text
 ip rip receive version 2
 ip rip send version 2
!
router rip
 default-metric 5
 distance 20
 neighbor 2.2.2.2
 passive-interface ens160
 redistribute ospf
 timers basic 30 40 60
 distribute-list prefix in
!
line vty
!
end
test#

Exp3: Get Information

$ curl -X GET http://localhost:8000/rip/advanced/detail/1/

{"neighbor":"2.2.2.2","passive_interface":"ens160","allow_ecmp":false,"default_info_originate":false,"redistribute":"ospf","default_metric":5,"distance":20,"distribute_list_perfix_in_out":"out","timers_update_time":30,"timers_time_out":40,"timers_garbage_time":60,"interface_name":"ens192","interface_auth_key_chain":"test_new","interface_auth_mode_md5":"False","interface_auth_mode_text":"True","interface_receive_version":"2","interface_send_version":"2"}

or

$ curl -X GET http://localhost:8000/rip/advanced/

Exp4: Delete

$ curl -X DELETE -d 'neighbor=2.2.2.2&passive_interface=ens160&distribute_list_perfix_in_out=in&interface_name=ens192' http://localhost:8000/rip/advanced/detail/1/