diff options
| author | shihaoyue <[email protected]> | 2024-08-30 12:36:40 +0800 |
|---|---|---|
| committer | shihaoyue <[email protected]> | 2024-08-30 12:36:40 +0800 |
| commit | 0d3b329cf3c62b0e9b599c8c337c7dc5c1b8b840 (patch) | |
| tree | d3268cb739a7508ab7216f64fda11195baa0fb9f | |
| parent | 616fc42f4467b7e95703f2ccd0ace77ac5950251 (diff) | |
更新Target数据库模型
| -rw-r--r-- | server/apps/agentcomm.py | 1 | ||||
| -rw-r--r-- | server/migrations/versions/854f2615247e_.py | 38 | ||||
| -rw-r--r-- | server/model.py | 19 |
3 files changed, 56 insertions, 2 deletions
diff --git a/server/apps/agentcomm.py b/server/apps/agentcomm.py index 40cde2b..befd176 100644 --- a/server/apps/agentcomm.py +++ b/server/apps/agentcomm.py @@ -13,7 +13,6 @@ from .util import error from model import Agent, TaskLog, Policy, TaskPolicy from exts import db from sqlalchemy.exc import SQLAlchemyError -from .target import get_pernode_delay bp = APIBlueprint("代理管理接口集合", __name__, url_prefix="/agent") diff --git a/server/migrations/versions/854f2615247e_.py b/server/migrations/versions/854f2615247e_.py new file mode 100644 index 0000000..4d8f2ea --- /dev/null +++ b/server/migrations/versions/854f2615247e_.py @@ -0,0 +1,38 @@ +"""empty message + +Revision ID: 854f2615247e +Revises: f24ae91aa925 +Create Date: 2024-08-30 12:34:18.588562 + +""" +from alembic import op +import sqlalchemy as sa +from sqlalchemy.dialects import mysql + +# revision identifiers, used by Alembic. +revision = '854f2615247e' +down_revision = 'f24ae91aa925' +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + with op.batch_alter_table('TARGETDATA', schema=None) as batch_op: + batch_op.alter_column('protect', + existing_type=mysql.VARCHAR(collation='utf8_unicode_ci', length=255), + type_=sa.JSON(), + existing_nullable=True) + + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + with op.batch_alter_table('TARGETDATA', schema=None) as batch_op: + batch_op.alter_column('protect', + existing_type=sa.JSON(), + type_=mysql.VARCHAR(collation='utf8_unicode_ci', length=255), + existing_nullable=True) + + # ### end Alembic commands ### diff --git a/server/model.py b/server/model.py index c40d65d..1c56092 100644 --- a/server/model.py +++ b/server/model.py @@ -124,7 +124,24 @@ class Target(db.Model): lat = db.Column(db.String(255)) lng = db.Column(db.String(255)) updated_time = db.Column(db.DateTime, server_default=db.func.now()) - protect = db.Column(db.String(255)) + protect = db.Column(db.JSON, default = { + "dnssec_enabled": True, # 是否启用 DNSSEC(DNS 安全扩展) + "0x20_encoding": False, # 是否使用 0x20 编码(域名是否随机化大小写) + "merge_dup": True, # 是否支持合并重复的 DNS 记录 + "max_ns_cnt": 5, # 查询中允许的最大名称服务器(NS)记录数量 + "max_cname_cnt": 10, # 查询中允许的最大 CNAME 链深度 + "retry_limit": 3, # 在失败后重试 DNS 查询的最大次数 + "fetch_limit": 100, # 在一次查询中可以获取的最大资源记录数 + "timeout": 2000, # DNS 查询的超时时间,单位是毫秒 + "random_port": True, # 是否使用随机端口进行 DNS 查询 + "random_id": False, # 是否使用随机 ID 进行 DNS 查询 + "version": "1.0.0", # DNS 软件版本 + "bailiwick": True, # 是否遵循 Bailiwick 规则 + "max_ttl": 3600, # 最大 TTL 值,单位为秒 + "min_ttl": 300, # 最小 TTL 值,单位为秒 + "edns_support": True, # 是否支持 EDNS(拓展DNS) + "rrl_qps": 50 # 每秒允许的资源记录锁(Rate Limiting)查询次数 + }) doh_domain = db.Column(db.String(255)) |
