> ## Documentation Index
> Fetch the complete documentation index at: https://arc.sdjz.wiki/llms.txt
> Use this file to discover all available pages before exploring further.

# 新增黑名单条目



## OpenAPI

````yaml openapi/arc-gateway-control-plane.zh.openapi.yaml post /v1/xdp/blacklist
openapi: 3.1.0
info:
  title: Arc 网关控制面 API
  version: 1.0.0
  license:
    name: Apache-2.0
    identifier: Apache-2.0
  description: >
    Arc Gateway 控制面 HTTP 端点的 OpenAPI 定义，接口实现位于
    `crates/arc-gateway/src/control.rs`。


    鉴权行为：

    - 如果设置了 `control_plane.auth_token`，请求需要携带 `Authorization: Bearer <token>`。

    - 如果未设置 `control_plane.auth_token`，仅允许本机回环地址访问。
servers:
  - url: http://127.0.0.1:22100
security:
  - bearerAuth: []
  - {}
tags:
  - name: status
    description: 节点状态与代际相关端点。
  - name: config
    description: 配置获取、长轮询、校验与本地应用端点。
  - name: cluster
    description: 集群级配置推送与熔断快照端点。
  - name: gossip
    description: Gossip 成员、统计与生命周期端点。
  - name: xdp
    description: XDP 状态与映射管理端点。
paths:
  /v1/xdp/blacklist:
    post:
      tags:
        - xdp
      summary: 新增黑名单条目
      operationId: addXdpBlacklistEntry
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/XdpBlacklistAddRequest'
      responses:
        '200':
          description: 条目已添加
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/XdpBlacklistMutationResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalError'
        '503':
          description: XDP 管理器未初始化
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    XdpBlacklistAddRequest:
      type: object
      required:
        - ip
      additionalProperties: false
      properties:
        ip:
          type: string
          description: IP 或 CIDR 文本（例如 `203.0.113.7/32`）。
        ttl_ms:
          type: integer
          format: int64
          minimum: 1
        reason:
          type: string
    XdpBlacklistMutationResponse:
      type: object
      required:
        - ok
        - ip
        - ttl_ms
        - reason
      properties:
        ok:
          type: boolean
          const: true
        ip:
          type: string
        ttl_ms:
          type: integer
          format: int64
        reason:
          type: string
    ErrorResponse:
      type: object
      required:
        - error
      properties:
        error:
          type: string
  responses:
    Unauthorized:
      description: 未授权
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error: unauthorized
    InternalError:
      description: 内部错误
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: opaque

````