示例:使用REST API创建使用接口的ACL

此示例显示在IP地址的开关上创建以下ACL和接口配置192.0.2.5:

Access-List IP ACLV4 10许可TCP 10.0.100.101 EQ 80 10.0.100.100.102 EQ 8000接口1/1/2否Shutdown Apply Access-List-List IP ACLV4 OUT
  1. 创建ACL。

    $curl -noproxy 192.0.2.5 -k -x post \ -b/tmp/auth_cookie -d'{“ cfg_version”:0,“ list_type”:“ ipv4”,“ name”:“ aclv4”}/192.0.2.5/rest/V10.04/系统/ACLS”
  2. 创建ACL条目。

    $curl - -noproxy 192.0.2.5 -k -k -x post \ -b/tmp/auth_cookie -d'{“ action”:“ pluce”,“ dst_ip”:“ 10.0.0.100.100.100.102/255.255.255.255.255.255”,“ dst_l4_port_min”:8000,“协议”:6,“ sequence_number”:10,“ src_ip”:“ 10.0.100.101/255.255.255.255.255”,“ SRC_L4_PORT_MAX”:80,“ 80,”:80,“ SRC_L4_PORT_PORT_MIN”:80/192.0.2.5/rest/V10.04/system/acls/aclv4,ipv4/cfg_aces”
  3. 在下一步中获取ACL Writable配置属性。

    $curl -noproxy 192.0.2.5 -k get \ -b/tmp/auth_cookie \“ https://192.0.2.5/rest/V10.04/system/acls/aclv4,ipv4?selector =可写的

    响应主体:

    {...“ cfg_aces”:“/rest/v10.04/system/acls/aclv4,pv4/cfg_aces”,“ cfg_version”:3738959816497071,“ vsx_sync”:“名称”:“ aclv4” ...}
  4. 使用从上一步中执行的GET请求收到的返回主体更新ACL配置。

    您未包含在PUT请求主体中的任何可写的属性都设置为它们的默认值,这可能是空的。

    以下示例显示了更新ACL配置的请求:

    $curl -noproxy 192.0.2.5 -k -x put \ -b/tmp/auth_cookie -d'{“ cfg_aces”:{“ 10”:“/rest/V10.04/system/acls/aclv4,ipv4/cfg_aces/10“},“ cfg_version”:1}'\“ https://192.0.2.5/rest/V10.04/system/acls/aclv4,ipv4“
  5. 获取界面的可写属性。

    GET响应主体仅包含已设置的配置属性。

    $curl -noproxy 192.0.2.5 -k get \ -b/tmp/auth_cookie \“ https://192.0.2.5/rest/V10.04/系统/界面/1%2F1%2F2?选择器=可写的

    响应主体:

    {...“ cdp_disable”:false,“描述”:null,“ lldp_med_med_civic_ca_info”:{},“ lldp_med_med_loc_civic_info”:null,“ lldp_med_lldp_med_loc_loc_elin_info”:false,“ lldp_med_capobility_disable”:false,“ lldp_medwork_policy_disable”:false,“ lldp_med_topology_notification_disable_disable”:false},“ pfc_priorities_config“ udld_enable”:false,“ udld_interval”:7000,“ udld_retries”:4,“ udld_rfc5171_compatibility_momode_mode”:“ under_config”,“ user_config”:user_config“:”
  6. 通过使用从上一步中执行的GET请求收到的返回主体,启用接口并将ACL信息添加到接口中。修改值在以下示例中显示。

    $curl -noproxy 192.0.2.5 -k -x put \ -b/tmp/auth_cookie -d'{...“ user_config”:{“ admin”:“ up”:“ up”},“ aclv4_out_out_cfg”:V10.04/system/acls/aclv4,ipv4“,“ aclv4_out_cfg_version”:1,...}'-d- \ \“ https://192.0.2.5/rest/V10.04/系统/界面/1%2F1%2F2“