2023年2月9日 星期四

Docker install Trojan-go Xray

方法一:选择时区 1.执行命令: dpkg-reconfigure tzdata 2.选择Asia->Shanghai 防止系统重启后时区改变,执行下面一行命令 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 参考处处: 作者:Leon_Geo 链接:https://www.jianshu.com/p/ef851a01d9de ================== Trojan-go SETUP ======================

docker run \
    --name trojan-go \
    -d \
    -v /etc/trojan-go/:/etc/trojan-go \
    --network host \
    p4gefau1t/trojan-go
   
tls 证书 同样copy into /etc/trojan-go
geoip 等路径 默认为docker image 内置的路径,不需要修改:  /usr/bin

config.json:

{
    "run_type": "server",
    "local_addr": "0.0.0.0",
    "local_port": 12345,
    "remote_addr": "127.0.0.1",
    "remote_port": 80,
    "password": [
        "Password1"
    ],
    "ssl": {
        "cert": "/etc/trojan-go/**.crt",
        "key": "/etc/trojan-go/**.key",
        "sni": "  youdomain.com  ",
        "alpn": [
             "http/1.1"
        ],
        "fallback_port": 80
    }
}

================== Xray SETUP ======================

docker run -d -p 12345:12345 --name xray --restart=always -v /etc/xray:/etc/xray teddysun/xray

config.json:
{
  "log": {
    "loglevel": "error"
  },
  "inbounds": [
    {
      "port": 12345,
      "protocol": "vless",
      "settings": {
        "clients": [
          {
            "id": "  UUID  ",
            "flow": "xtls-rprx-direct",
            "level": 0,
            "email": "asafss@exadeeefdmple.com"
          }
        ],
        "decryption": "none",
        "fallbacks": [
          {
            "dest": 80,
            "xver": 1
          }
        ]
      },
      "streamSettings": {
        "network": "tcp",
        "security": "xtls",
        "xtlsSettings": {
          "alpn": [
            "http/1.1",
            "h2"
          ],
          "certificates": [
            {
              "certificateFile": "youdomain.crt",
              "keyFile": "youdomain..key"
            }
          ]
        }
      }
    }
  ],
  "outbounds": [
    {
      "protocol": "freedom"
    }
  ]
}

2023年2月2日 星期四

在 Docker 中為 Brother DCP-T310 安裝 CUPS 驅動程序

本指南將引導您如何在 Docker 容器中設定 CUPS 服務,並為 Brother DCP-T310 多功能印表機安裝驅動程序。由於 Brother DCP-T310 沒有官方的 64 位 Linux 驅動程序,我們將利用 Brother 官方提供的安裝腳本來解決此問題。

必要條件:

  • 已安裝 Docker 和 Portainer (或 Docker CLI)。
  • Brother DCP-T310 印表機已連接到您的主機。

步驟 1:部署 CUPS Docker 容器

我們將使用 olbat/cupsd 映像來創建 CUPS 服務容器。

使用 Portainer 部署 (推薦):

  1. 登入您的 Portainer 儀表板。
  2. 導航到 "Containers" (容器) -> "Add container" (添加容器)。
  3. Image (映像): 輸入 olbat/cupsd
  4. Name (名稱): 輸入 cupsd (或其他您喜歡的名稱)
  5. Port mappings (端口映射):
    • 631 (Host) 映射到 631 (Container)。這將允許您通過主機的 631 端口訪問 CUPS 網頁介面。
  6. Volumes (儲存卷):
    • Bind (綁定):/var/run/dbus (Host) 映射到 /var/run/dbus (Container)。這是為了讓 CUPS 能與主機的 D-Bus 系統通信,尤其對於 USB 設備管理很重要。
    • Bind (綁定):/dev/bus/usb (Host) 映射到 /dev/bus/usb (Container)。這一步至關重要,它允許容器直接訪問主機的 USB 設備,包括您的印表機。
  7. Runtime & Resources (運行時與資源):
    • 勾選 "Privileged mode" (特權模式)。由於容器需要直接訪問 USB 設備和底層系統資源,特權模式是必需的。

使用 Docker CLI 部署:

在您的終端機中運行以下命令:

Bash
docker run -d \
  -p 631:631 \
  -v /var/run/dbus:/var/run/dbus \
  -v /dev/bus/usb:/dev/bus/usb \
  --name cupsd \
  --privileged \
  olbat/cupsd

步驟 2:在 CUPS 容器內安裝 Brother DCP-T310 驅動程序

由於 Brother DCP-T310 沒有現成的 64 位驅動程序,我們需要進入容器內部,執行 Brother 官方提供的安裝腳本。

  1. 進入 CUPS 容器的 Shell:

    • 使用 Portainer: 導航到 "Containers" (容器),找到您的 cupsd 容器,點擊其名稱,然後點擊 "Console" (控制台) 或 "Exec console" (執行控制台),選擇 shbash
    • 使用 Docker CLI:
      Bash
      docker exec -it cupsd bash
      
  2. 下載並運行 Brother 印表機安裝程序: 在容器的 Shell 內,依序執行以下命令:

    Bash
    # 下載 Brother 官方安裝腳本
    wget https://download.brother.com/welcome/dlf006893/linux-brprinter-installer-2.2.3-1.gz
    
    # 解壓縮
    gzip -d linux-brprinter-installer-2.2.3-1.gz
    
    # 賦予執行權限並運行安裝腳本
    # 當腳本提示您輸入印表機名稱時,輸入 "DCP-T310"
    bash linux-brprinter-installer-2.2.3-1 DCP-T310
    

    注意:

    • 安裝腳本會引導您完成安裝過程。當提示您選擇印表機型號時,請確認輸入 DCP-T310
    • 腳本可能會詢問您是否要安裝相關依賴、配置網路等,請根據提示操作。通常,對於 USB 連接,您可能需要選擇 USB 或自動檢測選項。
  3. 退出容器 Shell: 完成驅動程序安裝後,輸入 exit 退出容器的 Shell。


步驟 3:在 CUPS 伺服器中添加印表機

現在驅動程序已經安裝在容器中,您可以通過 CUPS 網頁介面添加您的印表機。

  1. 訪問 CUPS 網頁介面: 在您的網頁瀏覽器中打開 http://127.0.0.1:631 (如果您的 Docker 主機 IP 地址不是 127.0.0.1,請替換為實際 IP)。

  2. 登入 CUPS 介面: 點擊 "Administration" (管理)。當要求輸入使用者名和密碼時:

    • 使用者名稱: print
    • 密碼: print
  3. 添加印表機: 在 "Administration" 頁面下,點擊 "Printers" (印表機) 部分的 "Add Printer" (添加印表機)。

    • CUPS 應該會自動檢測到通過 USB 連接的 Brother DCP-T310。選擇它並繼續。
    • 按照提示命名您的印表機,添加描述和位置。
    • 在驅動程序選擇步驟,CUPS 應該會推薦已安裝的 Brother DCP-T310 驅動程序。選擇它並完成設置。

完成這些步驟後,您的 Brother DCP-T310 印表機應該就能通過 CUPS 伺服器(運行在 Docker 容器中)正常工作了。您可以嘗試列印測試頁來確認其功能。

2023年1月20日 星期五

Ubiquiti EdgeRouter X (ERX) 路由器 IPv6 配置指南 (適用於 PPPoE 環境)

如何在 Ubiquiti EdgeRouter X (ERX) 上配置 IPv6,主要針對 PPPoE 連接類型。內容涵蓋了 MSS Clamping 的調整、DHCPv6-PD 配置以及一些常見問題的解決方案。

重要提示:

  • 在進行任何配置更改之前,建議您備份當前的路由器配置。
  • 操作前請確保您對 EdgeOS 的基本操作有一定了解。

1. MSS Clamping 配置 (firewall/options/mss-clamp6)

MSS (Maximum Segment Size) Clamping 對於 IPv6 流量的穩定性至關重要,尤其在 PPPoE 環境下。不正確的 MSS 值可能導致部分網站或服務無法正常訪問。

  • 路徑: Config Tree -> firewall -> options -> mss-clamp6
  • 建議值: 1432
    • 計算方式: 標準 PPPoE 環境的 IPv6 MSS 值通常為 1500 (MTU) - 8 (PPPoE Header) - 40 (IPv6 Header) - 20 (TCP Header) = 1432
  • 故障排除: 如果設置為 1432 後仍出現問題 (例如部分網頁無法加載),您可以嘗試將 MSS 值進一步調小,例如 1382。這是因為某些服務提供商或網路環境可能存在更嚴格的限制。

2. DHCPv6-PD (Prefix Delegation) 配置 (內網 IPv6 分配)

DHCPv6-PD 允許路由器從 ISP 獲取一個 IPv6 前綴,並將其分配給內網設備。這對於在多個內網段分配 IPv6 地址特別有用。

  • 路徑: interfaces -> ethernet -> eth0 (或您的 PPPoE 介面) -> pppoe -> 0 (或您的 PPPoE 連接號) -> dhcpv6-pd -> pd -> 0 (第一個前綴委派)
  • 配置詳細:
    • interface (內網介面): 點擊進入此項,為您希望啟用 IPv6 的內網介面進行配置。
      • host-address:
        • 單個內網段: 如果您只有一個內網 IPv6 段 (例如 192.168.1.x),設定為 ::1。這表示該介面將獲得從委派前綴派生出的第一個可用地址。
        • 多個內網段: (如您所提到的 192.168.1.x192.168.2.x) 您需要為每個內網介面配置不同的 prefix-id
      • prefix-id:
        • 如果您只有一個內網段,設定為 :1
        • 如果您有兩個內網段,例如一個 192.168.1.x 對應 eth1,另一個 192.168.2.x 對應 eth2 (或其他 VLAN 介面),您可以將 eth1prefix-id 設為 :1,將 eth2prefix-id 設為 :2。這樣,每個內網段都會獲得一個獨立的 /64 IPv6 前綴。
      • service: 選擇 slaac (Stateless Address Autoconfiguration)。這允許內網設備通過路由通告自動配置 IPv6 地址,而無需 DHCPv6 伺服器。
    • 委派前綴大小調整:
      • 路徑: 在點開 pd/0 後,您可能會看到 /64
      • 修改: 將其修改為 /60。這將請求 ISP 提供一個更大的前綴 (包含 16 個 /64 子網),以便您可以為多個內網介面分配獨立的 /64 地址段而不會報錯。

3. 外網 IPv6 地址配置 (interfaces/ethernet/eth0/pppoe/0/ipv6)

這部分配置確保路由器的 PPPoE 介面能夠獲取到其自身的 IPv6 地址。

  • 路徑: interfaces -> ethernet -> eth0 (或您的 PPPoE 介面) -> pppoe -> 0 (或您的 PPPoE 連接號) -> ipv6
  • 配置:
    • address: 點擊 + 添加。這會讓路由器從 ISP 自動獲取 IPv6 地址。
    • enable: 點擊 + 啟用 IPv6 功能。

4. 完成設置與應用

  • 預覽並應用: 完成上述所有設置後,點擊頁面底部的 Preview (預覽) 查看所有待應用的更改,然後點擊 Apply (應用) 使配置生效。

5. DNS 服務與 IPv6 相關優化

如果 IPv6 DNS 服務不穩定,導致網頁載入緩慢或卡頓,您可以考慮啟用 no-dns 選項。

  • 路徑: interfaces -> ethernet -> eth0 (或您的 PPPoE 介面) -> pppoe -> 0 (或您的 PPPoE 連接號) -> ipv6
  • 選項: 啟用 no-dns 選項。
    • 作用: 這樣路由器就不會向客戶端分發 ISP 提供的 IPv6 DNS 服務器地址,而是依賴其他方式 (例如客戶端使用其自身的 IPv4 DNS 服務器,或您在路由器上配置其他可靠的公共 IPv6 DNS,如 Google DNS 2001:4860:4860::88882001:4860:4860::8844)。

6. 無 DHCPv6-PD 的情況 (IPv6 NDP 解決方案)

如果您的 ISP 沒有提供 DHCPv6-PD,而僅僅通過 IPv6 NDP (Neighbor Discovery Protocol) 分配地址,您可以考慮在 EdgeRouter X 上安裝 ndppd (Neighbor Discovery Protocol Proxy Daemon) 來實現。

  • 背景: 在 OpenWRT 環境中,這通常通過安裝 ndppd 套件來實現,它會將外網 (例如 eth0) 接收到的 NDP 請求轉發到內網 (例如 br-lan)。
  • EdgeRouter X 實現:
    • EdgeRouter X 運行的是 EdgeOS (基於 Debian 的 Vyatta 分支)。
    • 您需要 SSH 登入路由器,然後嘗試安裝 ndppd
    • 安裝命令 (可能需要先更新 apt 源並獲取 root 權限):
      Bash
      sudo apt update
      sudo apt install ndppd
      
    • 配置 ndppd 安裝完成後,您需要手動編輯 ndppd 的配置文件 (通常在 /etc/ndppd.conf),指定要代理的介面 (外網介面和內網介面),並啟動服務。這部分配置會更複雜,需要參考 ndppd 的文檔或相關教程。

注意: 這種情況相對複雜,且 ndppd 並非 EdgeOS 的預設套件。在嘗試此方法之前,請確保您已了解相關風險,並知道如何通過 SSH 恢復路由器。


通過遵循以上步驟,您應該能夠在 Ubiquiti EdgeRouter X 上成功配置 IPv6,享受更快的網路連接並為未來的網路趨勢做好準備。

大乐透号码选取器

大乐透号码选取器 (带历史记录) 大乐透号码选取器 前区号码 (5个,01-35) ...