VPP-AGENT restful 接口测试样例
MP2 接口测试
1、 traffic rule
# POST
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/traffic_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"trafficRuleId":"5a901ad1-2f39-4fe9-b254-3ad27101e548","action":"DROP","priority":1,"trafficFilter":[{"ipAddressType":"IP_V4","dstAddress":["2.2.2.2/24"],"dstPort":["21"],"protocol":["TCP"],"srcAddress":["1.1.1.1/24"],"srcPort":["12"]}]}' -k
# PUT
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/traffic_rules/5a901ad1-2f39-4fe9-b254-3ad27101e548" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"trafficRuleId":"5a901ad1-2f39-4fe9-b254-3ad27101e548","action":"DROP","priority":1,"trafficFilter":[{"ipAddressType":"IP_V4","dstAddress":["2.2.2.2/24"],"dstPort":["21"],"protocol":["TCP"],"srcAddress":["1.1.1.1/24"],"srcPort":["12"]},{"ipAddressType":"IP_V4","dstAddress":["2.2.2.2/24"],"dstPort":["21"],"protocol":["TCP"],"srcAddress":["1.1.1.1/24"],"srcPort":["12"]}]}' -k
# DELETE
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/traffic_rules/5a901ad1-2f39-4fe9-b254-3ad27101e548" -H 'Content-type: application/json' -H 'Accept: application/json' -k
# DELETE all
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/traffic_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -k
2、 dns rule direct
# POST
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/dnsredirect_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"dnsRedirectRuleId":"58f12f7f-b887-48d1-935f-55a0cc5f010e","domainName":"www.example1.com","ipAddressType":"IP_V4","dnsServerIp":"192.168.2.1"}' -k
# PUT
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/dnsredirect_rules/58f12f7f-b887-48d1-935f-55a0cc5f010e" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"dnsRedirectRuleId":"58f12f7f-b887-48d1-935f-55a0cc5f010e","domainName":"www.example2.com","ipAddressType":"IP_V4","dnsServerIp":"192.168.2.1"}' -k
# DELETE
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/dnsredirect_rules/58f12f7f-b887-48d1-935f-55a0cc5f010e" -H 'Content-type: application/json' -H 'Accept: application/json' -k
3、 dns rule
# POST
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/dns_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"dnsRuleId":"59f12f7f-b887-48d1-935f-55a0cc5f010f","domainName":"www.example2.com","ipAddressType":"IP_V4","ipAddress":"192.168.2.2","ttl":1}' -k
# PUT (注意 ttl 修改无效)
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/dns_rules/59f12f7f-b887-48d1-935f-55a0cc5f010f" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"dnsRuleId":"59f12f7f-b887-48d1-935f-55a0cc5f010f","domainName":"www.example3.com","ipAddressType":"IP_V4","ipAddress":"192.168.2.3","ttl":3}' -k
# DELETE
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/dns_rules/59f12f7f-b887-48d1-935f-55a0cc5f010f" -H 'Content-type: application/json' -H 'Accept: application/json' -k
4、 acl rule
# GET
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/acl_rule" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"aclType":"WHITE","ueTagList":[{"ueTag":"","type":"SUPI","value":"466920100001103"}]}' -k
# PUT
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/acl_rule" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"aclType":"WHITE","ueTagList":[{"ueTag":"","type":"SUPI","value":"466920100001104"}]}' -k
# DELETE
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/acl_rule" -H 'Content-type: application/json' -H 'Accept: application/json' -k
5、 bw rule
# GET
curl -X GET -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -k
# POST
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd25666","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01","sessionFilter":[{"destinationIp":"192.168.2.1","destinationPort":["2"],"sourceIp":"192.168.2.1","sourcePort":["2"]}]}' -k
# POST
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd25667","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01","sessionFilter":[{"destinationIp":"192.168.2.1","destinationPort":["2"],"sourceIp":"192.168.2.1","sourcePort":["2"]},{"destinationIp":"192.168.2.1","destinationPort":["2"],"sourceIp":"192.168.2.1","sourcePort":["2"]}]}' -k
# POST (application)
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd25668","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01"}' -k
# PUT
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25666" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01","sessionFilter":[{"destinationIp":"192.168.2.1","destinationPort":["4"],"sourceIp":"192.168.2.2","sourcePort":["4"]}]}' -k
# PUT
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25667" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01","sessionFilter":[{"destinationIp":"192.168.2.1","destinationPort":["1"],"sourceIp":"192.168.2.1","sourcePort":["1"]},{"destinationIp":"192.168.2.2","destinationPort":["2"],"sourceIp":"192.168.2.2","sourcePort":["2"]}]}' -k
# PUT (application)
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25668" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01"}' -k
# DELETE
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25667" -H 'Content-type: application/json' -H 'Accept: application/json' -k
# DELETE
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -k
6、 ue info
# GET
curl -X GET -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/ueinformation/query/ue_id?type=ipaddress&value=192.168.1.1" -H 'Content-type: application/json' -H 'Accept: application/json' -k
MEP接口测试
traffic rule :
# POST curl -X POST -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/traffic_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"trafficRuleId":"5a901ad1-2f39-4fe9-b254-3ad27101e548","action":"DROP","priority":1,"trafficFilter":[{"ipAddressType":"IP_V4","dstAddress":["2.2.2.2/24"],"dstPort":["21"],"protocol":["TCP"],"srcAddress":["1.1.1.1/24"],"srcPort":["12"]}]}' -k # PUT curl -X PUT -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/traffic_rules/5a901ad1-2f39-4fe9-b254-3ad27101e548" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"trafficRuleId":"5a901ad1-2f39-4fe9-b254-3ad27101e548","action":"DROP","priority":1,"trafficFilter":[{"ipAddressType":"IP_V4","dstAddress":["2.2.2.2/24"],"dstPort":["21"],"protocol":["TCP"],"srcAddress":["1.1.1.1/24"],"srcPort":["12"]},{"ipAddressType":"IP_V4","dstAddress":["2.2.2.2/24"],"dstPort":["21"],"protocol":["TCP"],"srcAddress":["1.1.1.1/24"],"srcPort":["12"]}]}' -k # DELETE curl -X DELETE -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/traffic_rules/5a901ad1-2f39-4fe9-b254-3ad27101e548" -H 'Content-type: application/json' -H 'Accept: application/json' -k
DNS redirect rule :
# POST
curl -X POST -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/dnsredirect_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"dnsRedirectRuleId":"58f12f7f-b887-48d1-935f-55a0cc5f010e","domainName":"www.example6.com","ipAddressType":"IP_V4","dnsServerIp":"192.168.2.1"}' -k
# PUT
curl -X PUT -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/dnsredirect_rules/58f12f7f-b887-48d1-935f-55a0cc5f010e" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"dnsRedirectRuleId":"58f12f7f-b887-48d1-935f-55a0cc5f010e","domainName":"www.example6.com","ipAddressType":"IP_V4","dnsServerIp":"192.168.2.1"}' -k
# DELETE
curl -X DELETE -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/dnsredirect_rules/58f12f7f-b887-48d1-935f-55a0cc5f010e" -H 'Content-type: application/json' -H 'Accept: application/json' -k
ACL rule :
# GET
curl -X POST -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/acl_rule" -H 'Content-type: application/json' -H 'Accept: application/json' -k
# PUT
curl -X PUT -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/acl_rule" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"ueTagList":[{"ueTag":"68:91:d0:69:17:3e","type":"IMSI","value":"466920100001103"}],"aclType":"WHITE"}' -k
# DELETE
curl -X DELETE -v -i "https://172.18.20.215:9191/mp2/v1/applications/10301/acl_rule" -H 'Content-type: application/json' -H 'Accept: application/json' -k
BW rule :
# GET curl -X GET -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -k # POST curl -X POST -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd25666","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01","sessionFilter":[{"destinationIp":"192.168.2.1","destinationPort":["2"],"sourceIp":"192.168.2.1","sourcePort":["2"]},{"destinationIp":"192.168.2.1","destinationPort":["2"],"sourceIp":"192.168.2.1","sourcePort":["2"]}]}' -k # POST (application) curl -X POST -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd25666","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01"}' -k # PUT curl -X PUT -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25666" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd2541f","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01","sessionFilter":[{"destinationIp":"192.168.2.1","destinationPort":["1"],"sourceIp":"192.168.2.1","sourcePort":["1"]},{"destinationIp":"192.168.2.2","destinationPort":["2"],"sourceIp":"192.168.2.2","sourcePort":["2"]}]}' -k # PUT (application) curl -X PUT -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25666" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd2541f","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01"}' -k # DELETE curl -X DELETE -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25666" -H 'Content-type: application/json' -H 'Accept: application/json' -k # DELETE (application) curl -X DELETE -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -k
UE info
# GET
curl -X GET -v -i "https://172.18.20.215:9191/mp2/v1/ueinformation/query/ue_id?type=ipaddress&value=192.168.1.1" -H 'Content-type: application/json' -H 'Accept: application/json' -k
带宽控制串入 5GS 测试
################ 5M
### 下行
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"mepId": "123", "appName": "1030", "bwAllocationRuleId": "094e2e22", "sessionFilter": [{"sourceIp": "", "sourcePort": "", "supi": "", "gpsi": "", "destinationIp": "192.168.2.1", "destinationPort":"", "protocol": ""}], "fixedBWPriority": 1, "fixedAllocation": 8000, "allocationDirection": "00" }' -k
### 上行
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"mepId": "123", "appName": "1030", "bwAllocationRuleId": "094e2e22", "sessionFilter": [{"sourceIp": "", "sourcePort": "", "supi": "", "gpsi": "", "destinationIp": "192.168.2.1", "destinationPort":"", "protocol": ""}], "fixedBWPriority": 1, "fixedAllocation": 8000, "allocationDirection": "01" }' -k
### both
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"mepId": "123", "appName": "1030", "bwAllocationRuleId": "094e2e22", "sessionFilter": [{"sourceIp": "", "sourcePort": "", "supi": "", "gpsi": "", "destinationIp": "192.168.2.1", "destinationPort":"", "protocol": ""}], "fixedBWPriority": 1, "fixedAllocation": 8000, "allocationDirection": "10" }' -k
################# 8M
### 下行
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"mepId": "123", "appName": "1030", "bwAllocationRuleId": "094e2e22", "sessionFilter": [{"sourceIp": "", "sourcePort": "", "supi": "", "gpsi": "", "destinationIp": "192.168.2.1", "destinationPort":"", "protocol": ""}], "fixedBWPriority": 1, "fixedAllocation": 640000, "allocationDirection": "00" }' -k
### 上行
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"mepId": "123", "appName": "1030", "bwAllocationRuleId": "094e2e22", "sessionFilter": [{"sourceIp": "", "sourcePort": "", "supi": "", "gpsi": "", "destinationIp": "192.168.2.1", "destinationPort":"", "protocol": ""}], "fixedBWPriority": 1, "fixedAllocation": 640000, "allocationDirection": "01" }' -k
### both
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"mepId": "123", "appName": "1030", "bwAllocationRuleId": "094e2e22", "sessionFilter": [{"sourceIp": "", "sourcePort": "", "supi": "", "gpsi": "", "destinationIp": "192.168.2.1", "destinationPort":"", "protocol": ""}], "fixedBWPriority": 1, "fixedAllocation": 640000, "allocationDiresction": "10" }' -k