immortalwrt / homeproxy

The modern ImmortalWrt proxy platform for ARM64/AMD64 (powered by sing-box)
GNU General Public License v2.0
463 stars 139 forks source link

Tun GSO setting not effective #105

Closed 2fact closed 3 months ago

2fact commented 3 months ago

Enabled GSO for Tun mode in "Routing setting" -> "Generic segmentation offload". But it's not effective. In /var/run/homeproxy/sing-box-c.json:

        "inbounds": [
                {
                        "type": "tun",
                        "tag": "tun-in",
                        "interface_name": "singtun0",
                        "inet4_address": "172.19.0.1/30",
                        "inet6_address": "fdfe:dcba:9876::1/126",
                        "mtu": 9000,
                        "gso": false,
                        "auto_route": false,
                        "stack": "system",
                        "sniff": true,
                        "sniff_override_destination": true
                }

Appears the code in generate_client.uc it's looking for config in infra section:

    tun_gso = uci.get(uciconfig, uciinfra, 'tun_gso') || '0';

But the config is actually in routing section in /etc/config/homeproxy:

config homeproxy 'routing'
        option sniff_override '1'
        option default_outbound '...'
        option bypass_cn_traffic '1'
        option tun_gso '1'
        option tcpip_stack 'system'
1715173329 commented 3 months ago

Fixed in dev branch