调整目录结构
This commit is contained in:
parent
721087a223
commit
f8a3e9e028
@ -1,44 +0,0 @@
|
||||
//
|
||||
// DNSDispatcher.swift
|
||||
// punchnet
|
||||
//
|
||||
// Created by 安礼成 on 2026/4/10.
|
||||
//
|
||||
import Foundation
|
||||
|
||||
// MARK: - DNS 分流調度器
|
||||
final class DNSDispatcher {
|
||||
// private let localClient: SDLLocalDNSClient
|
||||
// private let cloudClient: SDLDNSClient // 假設這是你原有的雲端 Client
|
||||
// private let logger: SDLLogger
|
||||
// private let internalDomain = "punchsky.com"
|
||||
//
|
||||
// init(localClient: SDLLocalDNSClient, cloudClient: SDLDNSClient, logger: SDLLogger) {
|
||||
// self.localClient = localClient
|
||||
// self.cloudClient = cloudClient
|
||||
// self.logger = logger
|
||||
// }
|
||||
//
|
||||
// /// 處理來自 TUN 的原始 IP 數據包
|
||||
// func dispatch(packet: IPPacket) {
|
||||
// // 1. 獲取 UDP 載荷 (假設 IPv4 20字節 + UDP 8字節)
|
||||
// let udpPayload = packet.data.suffix(from: 28)
|
||||
//
|
||||
// // 2. 解析 DNS 內容
|
||||
// let parser = DNSParser(data: udpPayload)
|
||||
// guard let dnsMsg = parser.parse(), let firstQuestion = dnsMsg.questions.first else {
|
||||
// return
|
||||
// }
|
||||
//
|
||||
// let domain = firstQuestion.name
|
||||
//
|
||||
// // 3. 根據域名分流
|
||||
// if domain.hasSuffix(internalDomain) {
|
||||
// logger.log("[Dispatcher] Cloud Route: \(domain)", level: .debug)
|
||||
// cloudClient.forward(ipPacket: packet) // 雲端通常需要完整包做隧道封裝
|
||||
// } else {
|
||||
// logger.log("[Dispatcher] Local Route: \(domain)", level: .debug)
|
||||
// localClient.query(dnsPayload: udpPayload) // 本地只需轉發載荷
|
||||
// }
|
||||
// }
|
||||
}
|
||||
@ -107,6 +107,14 @@ extension SDLV6Info {
|
||||
}
|
||||
}
|
||||
|
||||
extension SDLData {
|
||||
|
||||
func format() -> String {
|
||||
return "network_id: \(self.networkID), src_mac: \(LayerPacket.MacAddress.description(data: self.srcMac)), dst_mac: \(LayerPacket.MacAddress.description(data: self.dstMac)), data: \([UInt8](self.data))"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
extension SDLStunProbeReply {
|
||||
func socketAddress() async -> SocketAddress? {
|
||||
let address = SDLUtil.int32ToIp(self.ip)
|
||||
@ -1,16 +0,0 @@
|
||||
//
|
||||
// SDLProtoMessageExtension.swift
|
||||
// Tun
|
||||
//
|
||||
// Created by 安礼成 on 2024/10/24.
|
||||
//
|
||||
|
||||
import Foundation
|
||||
|
||||
extension SDLData {
|
||||
|
||||
func format() -> String {
|
||||
return "network_id: \(self.networkID), src_mac: \(LayerPacket.MacAddress.description(data: self.srcMac)), dst_mac: \(LayerPacket.MacAddress.description(data: self.dstMac)), data: \([UInt8](self.data))"
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user