- CheckMates
- :
- Products
- :
- Developers
- :
- API / CLI Discussion
- :
- Re: R80 API - set static route
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page
Are you a member of CheckMates?
×- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
R80 API - set static route
Hi,
I've been working with R80' API with Python rest calls. I'm trying to configure static routes via API. I didn't find any api call related to routes, so I guess the only way is using the "run-script" and "put-file".
I've sucessfully used the put-file to upload the script to the host. But whenever i use the run-script to run the script, i get:
statusCode: "failed"
statusDescription: Permission denied
Does anyone know how to fix this?
Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You probably have to make the script executable (e.g. with chmod) before you can execute it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
please see this one:
Can we get the routes from R80?
This command will run in "BASH" mode
for clish mode is needed to run clish command .
1. login
2. run-script
{
"script-name" : "show routes",
"script" : "netstat -nr",
"targets" : [ "mgmt" ]
}
Results:
{
"tasks": [
{
"target": "mgmt",
"task-id": "b3ee3851-8c50-47e7-96a5-5b897538bab9"
}
]
}
3. show-task
{
"task-id" : "b3ee3851-8c50-47e7-96a5-5b897538bab9" ,
"details-level" : "full"
}
Results:
{
"tasks": [
{
"uid": "690c8f82-d1d1-4060-96ea-86a99950cfe0",
"name": "mgmt - show routes",
"type": "CdmTaskNotification",
"domain": {
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde",
"name": "SMC User",
"domain-type": "domain"
},
"task-id": "b3ee3851-8c50-47e7-96a5-5b897538bab9",
"task-name": "mgmt - show routes",
"status": "succeeded",
"progress-percentage": 100,
"start-time": {
"posix": 1501670168404,
"iso-8601": "2017-08-02T13:36+0300"
},
"last-update-time": {
"posix": 1501670170686,
"iso-8601": "2017-08-02T13:36+0300"
},
"suppressed": false,
"task-details": [
{
"uid": "aa1e472e-9a7c-47e1-891a-a060e3b4262a",
"name": null,
"domain": {
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde",
"name": "SMC User",
"domain-type": "domain"
},
"color": "black",
"statusCode": "succeeded",
"statusDescription": "Kernel IP routing table, Destination Gateway Genmask Flags MSS Window irtt Iface, 1.1.1.0 0.0.0.0 255.255.255.254 U 0 0 0 eth0.3, 10.0.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0, 0.0....",
"taskNotification": "690c8f82-d1d1-4060-96ea-86a99950cfe0",
"gatewayId": "37308a02-7395-0a43-9765-562fabbd76c2",
"gatewayName": "",
"transactionId": 235893072,
"responseMessage": "S2VybmVsIElQIHJvdXRpbmcgdGFibGUKRGVzdGluYXRpb24gICAgIEdhdGV3YXkgICAgICAgICBHZW5tYXNrICAgICAgICAgRmxhZ3MgICBNU1MgV2luZG93ICBpcnR0IElmYWNlCjEuMS4xLjAgICAgICAgICAwLjAuMC4wICAgICAgICAgMjU1LjI1NS4yNTUuMjU0IFUgICAgICAgICAwIDAgICAgICAgICAgMCBldGgwLjMKMTAuMC4wLjAgICAgICAgIDAuMC4wLjAgICAgICAgICAyNTUuMjU1LjAuMCAgICAgVSAgICAgICAgIDAgMCAgICAgICAgICAwIGV0aDAKMC4wLjAuMCAgICAgICAgIDEwLjAuMC4xICAgICAgICAwLjAuMC4wICAgICAgICAgVUcgICAgICAgIDAgMCAgICAgICAgICAwIGV0aDAK",
"responseError": "",
"meta-info": {
"validation-state": "ok",
"last-modify-time": {
"posix": 1501670170723,
"iso-8601": "2017-08-02T13:36+0300"
},
"last-modifier": "admin",
"creation-time": {
"posix": 1501670168688,
"iso-8601": "2017-08-02T13:36+0300"
},
"creator": "admin"
},
"tags": [],
"icon": "General/globalsNa",
"comments": "",
"display-name": "",
"customFields": null
}
],
"comments": "Completed",
"color": "black",
"icon": "General/globalsNa",
"tags": [],
"meta-info": {
"lock": "unlocked",
"validation-state": "ok",
"last-modify-time": {
"posix": 1501670170705,
"iso-8601": "2017-08-02T13:36+0300"
},
"last-modifier": "admin",
"creation-time": {
"posix": 1501670168440,
"iso-8601": "2017-08-02T13:36+0300"
},
"creator": "admin"
},
"read-only": false
}
]
}
4. base64 for "responseMessage"
Results:
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
1.1.1.0 0.0.0.0 255.255.255.254 U 0 0 0 eth0.3
10.0.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 10.0.0.1 0.0.0.0 UG 0 0 0 eth0
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ofir Sh,
Is it possible to run a configure command directly on "run-script"? I've been trying to configure the static route with something like:
{
"script-name" : "set static route",
"script" : "set static-route 10.10.10.0/24 nexthop gateway logical eth0 priority 1 on",
"targets" : [ "mgmt" ]
}
Then, I get this response:
"tasks": [
{
"color": "black",
"comments": "Completed",
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"icon": "General/globalsNa",
"last-update-time": {
"iso-8601": "2017-09-11T07:35-0300",
"posix": 1505126105056
},
"meta-info": {
"creation-time": {
"iso-8601": "2017-09-11T07:35-0300",
"posix": 1505126104780
},
"creator": "f9329156",
"last-modifier": "f9329156",
"last-modify-time": {
"iso-8601": "2017-09-11T07:35-0300",
"posix": 1505126105080
},
"lock": "unlocked",
"validation-state": "ok"
},
"name": "px10mancp001 - fileTeste",
"progress-percentage": 100,
"read-only": true,
"start-time": {
"iso-8601": "2017-09-11T07:35-0300",
"posix": 1505126104733
},
"status": "succeeded",
"suppressed": false,
"tags": [],
"task-details": [
{
"color": "black",
"comments": "",
"display-name": "",
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"gatewayId": "f37f7517-67e3-cb45-b825-31696de67a52",
"gatewayName": "",
"icon": "General/globalsNa",
"meta-info": {
"creation-time": {
"iso-8601": "2017-09-11T07:35-0300",
"posix": 1505126104806
},
"creator": "f9329156",
"last-modifier": "f9329156",
"last-modify-time": {
"iso-8601": "2017-09-11T07:35-0300",
"posix": 1505126105098
},
"validation-state": "ok"
},
"responseError": "",
"responseMessage": "",
"statusCode": "succeeded",
"statusDescription": "",
"tags": [],
"taskNotification": "d0ad36bc-4644-48c9-b7ff-bad68161088a",
"transactionId": 629377159,
"uid": "0339ffd5-1a0e-4099-8166-97dab194e66b"
}
],
"task-id": "6e181a03-e15e-4297-8348-8b1457b0d4cb",
"task-name": "px10mancp001 - fileTeste",
"type": "CdmTaskNotification",
"uid": "d0ad36bc-4644-48c9-b7ff-bad68161088a"
}
]
But the route is not configured at all.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Try clish -c "set static-route 10.10.10.0/24 nexthop gateway logical eth0 priority 1 on" instead
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dameon,
I works!. Thanks for help
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Keep in mind that any script is run as BASH script. So you need to switch to CLISH manually.
For a oneliner the suggestion above is fine.
I was thinking about a multi line example but that needs some more testing as I am not getting the right responses yet.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The sample script below shows you multiple CLISH commands.
clish << EndOfCommands
show interfaces
show interface eth0
show interface eth1
show interface eth3
show route
exit
EndOfCommands
- The "EndOfCommands" string at the beginning and end must match exactly.
- The exit command as the last valid clish command. Or you end up with a clish procress on your firewall that goes beserk. (Very funny in a lab but not something you want in real life.)
Enjoy.