欧美vvv,亚洲第一成人在线,亚洲成人欧美日韩在线观看,日本猛少妇猛色XXXXX猛叫

新聞資訊

    的使用與配置詳解 一、快速開始 1. 安裝

    安裝

    在中繼服務器上開啟 IP 地址轉發:

    echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
    echo "net.ipv4.conf.all.proxy_arp = 1" >> /etc/sysctl.conf
    sysctl -p /etc/sysctl.conf
    

    添加 規則,允許本機的 NAT 轉換:

    iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
    iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
    iptables -A FORWARD -i wg0 -o wg0 -m conntrack --ctstate NEW -j ACCEPT
    iptables -t nat -A POSTROUTING -s 192.168.1.1/24 -o eth0 -j MASQUERADE
    

    注意:

    wg0:為你定義的虛擬網卡

    192.168.1.1: 為你的虛擬IP地址段

    eth0:為你的物理網卡

    2.編寫配置文件

    配置文件可以放在任何路徑下,但必須通過絕對路徑引用。默認路徑是 /etc//wg0.conf

    生成秘鑰

    #生成私鑰
    wg genkey > example.key
    # 生成公鑰
    wg pubkey < example.key > example.key.pub
    

    啟動與停止

    使用 wg-quick 快速啟動或停止

    # wg-quick up wg0 
    wg-quick up /full/path/to/wg0.conf
    # wg-quick down wg0
    wg-quick down /full/path/to/wg0.conf
    

    添加/刪除 操作命令

    # 注冊/注銷 VPN 網絡接口
    ip link add dev wg0 type wireguard
    ip link delete dev wg0
    # 啟動/停止 VPN 網絡接口
    ip link set wg0 up
    ip link set wg0 down
    # 注冊/注銷 本地 VPN 地址
    ip address add dev wg0 192.0.2.3/32
    ip address delete dev wg0 192.0.2.3/32
    # 添加/刪除 VPN 路由
    ip route add 192.0.2.3/32 dev wg0
    ip route delete 192.0.2.3/32 dev wg0
    

    開機自啟

    系統重啟后, 創建的網卡設備就會丟失,有自動化的腳本

    systemctl enable wg-quick@wg0
    

    配置熱重載

    wg-quick并未提供重載相關的指令,但是提供了 strip 指令,可以將 conf 文件轉換為 wg 指令可以識別的格式

    # 實現熱重載
    wg syncconf wg0 <(wg-quick strip wg0)
    

    查看信息

    查看接口信息

    # 查看系統 VPN 接口信息
    ip link show wg0
    # 查看 VPN 接口詳細信息
    wg show all
    wg show wg0
    

    查看地址信息

    診斷無網絡有效ip配置_沒有有效ip地址配置_w7本地連接沒有有效的ip配置

    # 查看 VPN 接口地址
    ip address show wg0
    

    路由

    # 查看系統路由表
    $ ip route show table main
    $ ip route show table local
    # 獲取到特定 IP 的路由
    $ ip route get 192.0.2.3
    

    二、配置詳解

    使用 INI 語法作為其配置文件格式。

    配置文件可以放在任何路徑下,但必須通過絕對路徑引用。默認路徑是 /etc//wg0.conf。

    配置文件的命名形式必須為 ${ 接口的名稱}.conf。

    通常情況下 接口名稱以 wg 為前綴,并從 0 開始編號,但你也可以使用其他名稱,只要符合正則表達式 ^[a-zA-Z0-9_=+.-]{1,15}$ 就行。

    可以選擇使用 wg 命令來手動配置 VPN,但一般建議使用 wg-quick,它提供了更強大和用戶友好的配置體驗,可以通過配置文件來管理配置。

    配置文件示例:

    [Interface]
    # Name = node1.example.tld
    Address = 192.0.2.3/32
    ListenPort = 51820
    PrivateKey = localPrivateKeyAbcAbcAbc=
    DNS = 1.1.1.1,8.8.8.8
    Table = 12345
    MTU = 1500
    PreUp = /bin/example arg1 arg2 %i
    PostUp = /bin/example arg1 arg2 %i
    PreDown = /bin/example arg1 arg2 %i
    PostDown = /bin/example arg1 arg2 %i
    [Peer]
    # Name = node2-node.example.tld
    AllowedIPs = 192.0.2.1/24
    Endpoint = node1.example.tld:51820
    PublicKey = remotePublicKeyAbcAbcAbc=
    PersistentKeepalive = 25
    

    []

    定義本地VPN配置, 示例:

    本地節點是客戶端,只路由自身的流量,只暴露一個 IP

    [Interface]
    # Name = phone.example-vpn.dev
    Address = 192.0.2.5/32
    PrivateKey = 
    

    本地節點是中繼服務器,它可以將流量轉發到其他對等節點(peer),并公開整個 VPN 子網的路由

    [Interface]
    # Name = public-server1.example-vpn.tld
    Address = 192.0.2.1/24
    ListenPort = 51820
    PrivateKey = 
    DNS = 1.1.1.1
    

    # Name

    這是 INI 語法中的標準注釋,用于展示該配置部分屬于哪個節點。

    這部分配置會被 完全忽略,對 VPN 的行為沒有任何影響。

    為本機設置vpn私有地址(段),不同peer節點,可以設置不同段

    定義本地節點應該對哪個地址范圍進行路由。

    如果是常規的客戶端,則將其設置為節點本身的單個 IP(使用 CIDR 指定,例如 192.0.2.3/32);

    如果是中繼服務器,則將其設置為可路由的子網范圍

    例如:

    當本地節點是中繼服務器時,需要通過該參數指定端口來監聽傳入 VPN 連接,默認端口號是 51820。

    常規客戶端不需要此選項。

    本地節點的私鑰,所有節點(包括中繼服務器)都必須設置。不可與其他服務器共用。

    私鑰可通過命令 wg > .key 來生成

    DNS

    通過 DHCP 向客戶端宣告 DNS 服務器。

    客戶端將會使用這里指定的 DNS 服務器來處理 VPN 子網中的 DNS 請求,但也可以在系統中覆蓋此選項。例如:

    沒有有效ip地址配置_診斷無網絡有效ip配置_w7本地連接沒有有效的ip配置

    Table

    定義 VPN 子網使用的路由表,默認不需要設置。該參數有兩個特殊的值需要注意:

    例如:Table = 1234

    MTU

    定義連接到對等節點(peer)的 MTU( Unit,最大傳輸單元),默認不需要設置,一般由系統自動確定。

    PreUp

    啟動 VPN 接口之前運行的命令。這個選項可以指定多次,按順序執行。

    例如:

    啟動 VPN 接口之后運行的命令。這個選項可以指定多次,按順序執行。

    例如:

    PostUp = wg set %i private-key /etc/wireguard/wg0.key <(some command here)
    

    PostUp = echo "$(date +%s) WireGuard Started" >> /var/log/wireguard.log
    

    PostUp = curl https://events.example.dev/wireguard/started/?key=abcdefg
    

    PostUp = ip rule add ipproto tcp dport 22 table 1234
    

    # 接口名稱需要改為服務器網卡名稱
    PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    

    PostUp = resolvectl domain %i "~."; resolvectl dns %i 192.0.2.1; resolvectl dnssec %i yes
    

    停止 VPN 接口之前運行的命令。這個選項可以指定多次,按順序執行。

    例如:

    PreDown = echo "$(date +%s) WireGuard Going Down" >> /var/log/wireguard.log
    

    PreDown = curl https://events.example.dev/wireguard/stopping/?key=abcdefg
    

    停止 VPN 接口之后運行的命令。這個選項可以指定多次,按順序執行。

    例如:

    PostDown = echo "$(date +%s) WireGuard Going Down" >> /var/log/wireguard.log
    

    PostDown = curl https://events.example.dev/wireguard/stopping/?key=abcdefg
    

    PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
    

    [Peer]

    定義能夠為一個或多個地址路由流量的對等節點(peer)的 VPN 設置。

    對等節點(peer)可以是將流量轉發到其他對等節點(peer)的中繼服務器,也可以是通過公網或內網直連的客戶端。

    中繼服務器必須將所有的客戶端定義為對等節點(peer),除了中繼服務器之外,其他客戶端都不能將位于 NAT 后面的節點定義為對等節點(peer),因為路由不可達。

    對于那些只為自己路由流量的客戶端,只需將中繼服務器作為對等節點(peer),以及其他需要直接訪問的節點。

    舉個例子,在下面的配置中,- 作為中繼服務器,其他的客戶端有的是直連,有的位于 NAT 后面:

    配置示例:

    指定遠端對等節點(peer)的公網地址。

    如果對等節點(peer)位于 NAT 后面或者沒有穩定的公網訪問地址w7本地連接沒有有效的ip配置,就忽略這個字段。

    通常只需要指定中繼服務器的 ,當然有穩定公網 IP 的節點也可以指定。例如:

    允許該對等節點(peer)發送過來的 VPN 流量中的源地址范圍。

    同時這個字段也會作為本機路由表中 wg0 綁定的 IP 地址范圍。

    如果對等節點(peer)是常規的客戶端,則將其設置為節點本身的單個 IP;如果對等節點(peer)是中繼服務器,則將其設置為可路由的子網范圍。

    可以使用 , 來指定多個 IP 或子網范圍。該字段也可以指定多次。

    當決定如何對一個數據包進行路由時,系統首先會選擇最具體的路由,如果不匹配再選擇更寬泛的路由。

    例如,對于一個發往 192.0.2.3 的數據包,系統首先會尋找地址為 192.0.2.3/32 的對等節點(peer),如果沒有再尋找地址為 192.0.2.1/24 的對等節點(peer),以此類推。

    例如:

    對等節點(peer)的公鑰,所有節點(包括中繼服務器)都必須設置。可與其他對等節點(peer)共用同一個公鑰。

    公鑰可通過命令 wg < .key > .key.pub 來生成,其中 .key 是上面生成的私鑰。

    例如: = =

    如果連接是從一個位于 NAT 后面的對等節點(peer)到一個公網可達的對等節點(peer),那么 NAT 后面的對等節點(peer)必須定期發送一個出站 ping 包來檢查連通性,如果 IP 有變化,就會自動更新。

    例如:

    三、配置示例:

    配置規則寫法要領:指定位置寫指定規則

    : 確定本機的內網ip(指定),本機監聽端口()

    Peer: 其他機器內網ip或網段() ,這樣發送數據包給相應內網ip時網卡就將該包轉發給設置的外網ip ()

    私鑰公鑰用于數據加密安全

    診斷無網絡有效ip配置_沒有有效ip地址配置_w7本地連接沒有有效的ip配置

    在節點(82.157.xxx.xxx)

    vi /etc//wg0.conf

    之后會根據該文件名自動生成wg0虛擬網卡

    [Interface]
    Address = 10.10.10.1/24
    ListenPort = 51820
    PrivateKey = oMdhm2x+c6K0CKOm3p40Jkkq1YSsHs6hrkJxvm/g/0Q=
    [Peer]
    Endpoint = 47.106.xxx.xxx:51820
    PublicKey = aH/GnX3kTbmieairpLYtZMIdTfom0C9NWETSSQyCb0c=
    AllowedIPs = 10.10.11.1/24
    [Peer]
    Endpoint = 52.199.xxx.xxx:51820
    PublicKey = 9ys4TqyO3R2nOdoRSba+wLFquJI+aeqmMYfBg0Xo4CU=
    AllowedIPs = 10.10.12.1/24
    

    在 47.106.xxx.xxx

    vi /etc//wg0.conf

    [Interface]
    Address = 10.10.11.1/24
    ListenPort = 51820
    PrivateKey = oMdhm2x+c6K0CKOm3p40Jkkq1YSsHs6hrkJxvm/g/0Q=
    [Peer]
    Endpoint = 82.157.xxx.xxx:51820
    PublicKey = /uoGEOucdpTrEPfpE8PH8qsY6vY1JT02D7x/8D7r9zI=
    AllowedIPs = 10.10.10.1/24
    

    在 52.199.xxx.xxx

    vi /etc//wg0.conf

    [Interface]
    # Name = public-server2.example-vpn.tld
    Address = 10.10.12.1/24
    ListenPort = 51820
    PrivateKey = oMdhm2x+c6K0CKOm3p40Jkkq1YSsHs6hrkJxvm/g/0Q=
    [Peer]
    Endpoint = 82.157.xxx.xxx:51821
    PublicKey = aH/GnX3kTbmieairpLYtZMIdTfom0C9NWETSSQyCb0c=
    AllowedIPs = 10.10.10.1/24
    

    四、高級特性 IPv6

    也支持 IPv6。例如:

    [Interface]
    AllowedIps = 192.0.2.3/24, 2001:DB8::/64
    [Peer]
    ...
    AllowedIPs = 0.0.0.0/0, ::/0
    

    轉發所有流量

    如果你想通過 VPN 轉發所有的流量,包括 VPN 子網和公網流量,需要在 [Peer] 的 中添加 0.0.0.0/0, ::/0。

    即便只轉發 IPv4 流量,也要指定一個 IPv6 網段w7本地連接沒有有效的ip配置,以避免將 IPv6 數據包泄露到 VPN 之外。詳情參考: /r////

    [Interface]
    # Name = phone.example-vpn.dev
    Address = 192.0.2.3/32
    PrivateKey = <private key for phone.example-vpn.dev>
    [Peer]
    # Name = public-server1.example-vpn.dev
    PublicKey = <public key for public-server1.example-vpn.dev>
    Endpoint = public-server1.example-vpn.dev:51820
    AllowedIPs = 0.0.0.0/0, ::/0
    

    w7本地連接沒有有效的ip配置_診斷無網絡有效ip配置_沒有有效ip地址配置

    NAT-to-NAT 連接

    如果兩個對等節點(peer)都位于 NAT 后面,想不通過中繼服務器直接連接,需要保證至少有一個對等節點(peer)具有穩定的公網出口,使用靜態公網 IP 或者通過 DDNS 動態更新 FQDN 都可以。

    協議可以動態配置兩個 NAT 之間的連接,它可以通過信令服務器來檢測每個主機的 IP:Port 組合。

    而 沒有這個功能,它沒有沒有信令服務器來動態搜索其他主機,只能硬編碼 +,并通過 來維持連接。

    總結一下 NAT-to-NAT 連接的前提條件:

    UDP 打洞

    對于通信雙方來說,只要服務端所在的 NAT 路由器沒有指定到 NAT 后面的對等節點(peer)的轉發規則,就需要進行 UDP 打洞。

    UDP 打洞的原理: Peer1 向 Peer2 發送一個 UDP 數據包,不過 Peer2 的 NAT 路由器不知道該將這個包發給誰,直接丟棄了,不過沒關系,這一步的目的是讓 Peer1 的 NAT 路由器能夠接收 UDP 響應并轉發到后面的 Peer1。Peer2 向 Peer1 發送一個 UDP 數據包,由于上一步的作用,Peer1 的 NAT 路由器已經建立臨時轉發規則,可以接收 UDP 響應,所以可以接收到該數據包,并轉發到 Peer1。Peer1 向 Peer2 發送一個 UDP 響應,由于上一步的作用,Peer2 的 NAT 路由器已經可以接收 UDP 響應,所以可以接收到該數據包,并轉發到 Peer2。

    這種發送一個初始的數據包被拒絕,然后利用路由器已建立的轉發規則來接收響應的過程被稱為 『UDP 打洞』

    當你發送一個 UDP 數據包出去時,路由器通常會創建一個臨時規則來映射源地址/端口和目的地址/端口,反之亦然。從目的地址和端口返回的 UDP 數據包會被轉發到原來的源地址和端口,這就是大多數 UDP 應用在 NAT 后面的運作方式(如 、Skype 等)。

    這個臨時規則會在一段時間后失效,所以 NAT 后面的客戶端必須通過 定期發送數據包來維持連接的持久性。

    當兩個對等節點(peer)都位于 NAT 后面時,要想讓 UDP 打洞生效,需要兩個節點在差不多的時間向對方發送數據包,這就意味著雙方需要提前知道對方的公網地址和端口號,可以在 wg0.conf 中指定。

    UDP 打洞的局限性

    從 2019 年開始,很多以前用過的老式打洞方法都不再有效了。

    以前很著名的就是 pwnat 開創的一種新的打洞方法,它能夠在不需要代理、第三方服務器、upnp、DMZ、、dns 轉換的情況下實現 NAT 中的 P2P 通信。它的原理也很簡單:

    通過讓客戶端假裝成為一個互聯網上任意的 ICMP 跳躍點( a hop on the )來解決這個問題,從而讓服務端能夠獲取到客戶端的 IP 地址。 命令也是使用這項技術來檢測 上的跳躍點。

    具體來說,當服務器啟動時,它開始向固定地址 3.3.3.3 發送固定的 ICMP 回應請求包(ICMP echo )。

    顯然,我們無法從 3.3.3.3 收到返回的 ICMP 回應數據包(ICMP echo )。然而,3.3.3.3 并不是我們可以訪問的主機,我們也不是想偽裝成它來發 ICMP 回應數據包。

    相反,pwnat 技術的實現原理在于,當我們的客戶端想要連接服務端時,客戶端(知道服務器IP地址)會向服務端送 ICMP 超時數據包(ICMP Time )。

    這個 ICMP 數據包里面包含了服務端發送到 3.3.3.3 的原始固定 ICMP 回應請求包。

    為什么要這樣做呢?好吧,我們假裝是互聯網上的一個 ICMP 跳越點,禮貌地告訴服務器它原來的 ICMP 回應請求包無法傳遞到 3.3.3.3。

    而你的 NAT 是一個聰明的設備,它會注意到 ICMP 超時數據包內的數據包與服務器發出 ICMP 回應請求包相匹配。然后它將 ICMP 超時數據包轉發回 NAT 后面的服務器,包括來自客戶端的完整 IP 數據包頭,從而讓服務端知道客戶端 IP 地址是什么!

    現在這種類似的 UDP 打洞方法受到了很多的限制。除了 UDP 打洞之外,我們仍然可以使用硬編碼的方式指定兩個對等節點(peer)的公網地址和端口號,這個方法對大多數 NAT 網絡都有效。

    源端口隨機化

    如果所有的對等節點(peer)都在具有嚴格的 UDP 源端口隨機化的 NAT 后面(比如大多數蜂窩網絡),那么無法實現 NAT-to-NAT 連接。

    因為雙方都無法協商出一個 ,并保證自己的 NAT 在發出 ping 包后能夠接收發往該端口的流量,所以就無法初始化打洞,導致連接失敗。

    因此,一般在 LTE/3G 網絡中無法進行 p2p 通信。

    使用信令服務器

    如果所有的對等節點(peer)都在具有嚴格的 UDP 源端口隨機化的 NAT 后面,就無法直接實現 NAT-to-NAT 連接,但通過第三方的信令服務器是可以實現的。

    信令服務器相當于一個中轉站,它會告訴通信雙方關于對方的 IP:Port 信息。這里有幾個項目可以參考:

    動態 IP 地址

    只會在啟動時解析域名,如果你使用 DDNS 來動態更新域名解析,那么每當 IP 發生變化時,就需要重新啟動 。

    目前建議的解決方案是使用 鉤子每隔幾分鐘或幾小時重新啟動 來強制解析域名。

    總的來說,NAT-to-NAT 連接極為不穩定,而且還有一堆其他的限制,所以還是建議通過中繼服務器來通信。

    NAT-to-NAT 配置示例:

    Peer1:

    [Interface]
    ...
    ListenPort = 12000
    [Peer]
    ...
    Endpoint = peer2.example-vpn.dev:12000
    PersistentKeepalive = 25
    

    Peer2:

    [Interface]
    ...
    ListenPort = 12000
    [Peer]
    ...
    Endpoint = peer1.example-vpn.dev:12000
    PersistentKeepalive = 25
    

    更多資料:

    動態分配子網 IP

    這里指的是對等節點(peer)的 VPN 子網 IP 的動態分配,類似于 DHCP,不是指 。

    官方已經在開發動態分配子網 IP 的功能,具體的實現可以看這里: /wg-

    當然,你也可以使用 在運行時從文件中讀取 IP 值來實現一個動態分配 IP 的系統,類似于 的 CNI 插件。例如:

    [Interface]
    ...
    PostUp = wg set %i allowed-ips /etc/wireguard/wg0.key <(some command)
    

    奇技淫巧 共享一個 peers.conf 文件

    介紹一個秘密功能,可以簡化 的配置工作。

    如果某個 peer 的公鑰與本地接口的私鑰能夠配對,那么 會忽略該 peer。

    利用這個特性,我們可以在所有節點上共用同一個 peer 列表,每個節點只需要單獨定義一個 [] 就行了,即使列表中有本節點,也會被忽略。具體方式如下:

    關于 peers.conf 的共享方式有很多種,你可以通過 這樣的工具來分發,可以使用 之類的網盤來同步,當然也可以使用 ceph 這種分布式文件系統來將其掛載到不同的節點上。

    從文件或命令輸出中讀取配置

    也可以從任意命令的輸出或文件中讀取內容來修改配置的值,利用這個特性可以方便管理密鑰

    診斷無網絡有效ip配置_沒有有效ip地址配置_w7本地連接沒有有效的ip配置

    例如可以在運行時從 或 AWS KMS 等第三方服務讀取密鑰。

    容器化

    也可以跑在容器中,最簡單的方式是使用 -- 和 --cap-add=all 參數,讓容器可以加載內核模塊。

    你可以讓 跑在容器中,向宿主機暴露一個網絡接口;也可以讓 運行在宿主機中,向特定的容器暴露一個接口。

    下面給出一個具體的示例,本示例中的 容器通過 中繼服務器來路由所有流量。

    本示例中給出的容器配置是 - 的配置文件格式。

    中繼服務器:

    容器配置

    version: '3'
    services:
      wireguard:
        image: linuxserver/wireguard
        ports:
          - 51820:51820/udp
        cap_add:
          - NET_ADMIN
          - SYS_MODULE
        volumes:
          - /lib/modules:/lib/modules
          - ./wg0.conf:/config/wg0.conf:ro
    

    配置 wg0.conf:

    [Interface]
    # Name = relay1.wg.example.com
    Address = 192.0.2.1/24
    ListenPort = 51820
    PrivateKey = oJpRt2Oq27vIB5/UVb7BRqCwad2YMReQgH5tlxz8YmI=
    DNS = 1.1.1.1,8.8.8.8
    PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE; ip6tables -A FORWARD -i wg0  -j ACCEPT; ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE; ip6tables -D FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
    [Peer]
    # Name = peer1.wg.example.com
    PublicKey = I+hXRAJOG/UE2IQvIHsou2zTgkUyPve2pzvHTnd/2Gg=
    AllowedIPs = 192.0.2.2/32
    

    客戶端配置:

    容器配置

    version: '3'
    services:
      wireguard:
        image: linuxserver/wireguard
        cap_add:
          - NET_ADMIN
          - SYS_MODULE
        volumes:
          - /lib/modules:/lib/modules
          - ./wg0.conf:/config/wg0.conf:ro
        
      vpn_test:
        image: curlimages/curl
        entrypoint: curl -s http://whatismyip.akamai.com/
        network_mode: 'service:wireguard'
    

    客戶端 配置 wg0.conf:

    [Interface]
    # Name = peer1.wg.example.com
    Address = 192.0.2.2/32
    PrivateKey = YCW76edD4W7nZrPbWZxPZhcs32CsBLIi1sEhsV/sgk8=
    DNS = 1.1.1.1,8.8.8.8
    [Peer]
    # Name = relay1.wg.example.com
    Endpoint = relay1.wg.example.com:51820
    PublicKey = zJNKewtL3gcHdG62V3GaBkErFtapJWsAx+2um0c0B1s=
    AllowedIPs = 192.0.2.1/24,0.0.0.0/0
    PersistentKeepalive = 21
    

    引用:

    教程: 的搭建使用與配置詳解 – 云原生實驗室

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有