功能描述/Feature description
Currently, Karing uses the official sing-box core. However, upstream sing-box
does not (and likely will not) support advanced Xray xhttp obfuscation
parameters (such as xPaddingHeader, sessionIDPlacement, seqPlacement,
xPaddingBytes, etc.) due to known compatibility/political differences between
the core developers.
When users try to import raw JSON configs with these advanced Xray parameters
into Karing, the parser either drops them or generates an invalid VLESS
connection without the required obfuscation.
The Proposal: Please consider migrating to, or offering a toggle to use, the
sing-box-extended kernel (https://github.com/shtorm-7/sing-box-extended). This
third-party fork incorporates all incompatible protocols and advanced Xray
features into the Sing-box ecosystem. Supporting this extended core in Karing's
"magic kernel" would allow users to parse and use these complex configurations
natively.
Here is an example of an Xray configuration block that currently fails to import
properly in Karing:
"xhttpSettings": {
"extra": {
"mode": "packet-up",
"path": "/api/cart/sync",
"seqKey": "chunk",
"seqPlacement": "cookie",
"sessionIDKey": "visitor_id",
"sessionIDPlacement": "path",
"xPaddingBytes": "100-1000",
"xPaddingHeader": "X-Cache-Status",
"xPaddingKey": "_ts",
"xPaddingMethod": "tokenish"
}
}
使用场景/Use case
Russia's "Default Deny" (Whitelist) TSPU DPI: In some regions, mobile ISPs have
implemented aggressive DPI filters that drop packets (TCP Freeze, no RST sent)
after just 15-20KB of TLS data if the SNI/connection pattern is not explicitly
whitelisted. Standard VLESS+Reality is sometimes not enough to bypass this. The
only reliable workaround is using Xray's xhttp with extreme padding and chunking
(e.g., hiding connection streams inside fake HTTP cookies and headers).
Right now, Karing users are forced to use alternative Xray-core clients (like
Happ) just for these specific configs. Integrating sing-box-extended would make
Karing the ultimate all-in-one anti-censorship tool.
适用系统/Target OS
功能描述/Feature description
Currently, Karing uses the official sing-box core. However, upstream sing-box
does not (and likely will not) support advanced Xray xhttp obfuscation
parameters (such as xPaddingHeader, sessionIDPlacement, seqPlacement,
xPaddingBytes, etc.) due to known compatibility/political differences between
the core developers.
When users try to import raw JSON configs with these advanced Xray parameters
into Karing, the parser either drops them or generates an invalid VLESS
connection without the required obfuscation.
The Proposal: Please consider migrating to, or offering a toggle to use, the
sing-box-extended kernel (https://github.com/shtorm-7/sing-box-extended). This
third-party fork incorporates all incompatible protocols and advanced Xray
features into the Sing-box ecosystem. Supporting this extended core in Karing's
"magic kernel" would allow users to parse and use these complex configurations
natively.
Here is an example of an Xray configuration block that currently fails to import
properly in Karing:
"xhttpSettings": {
"extra": {
"mode": "packet-up",
"path": "/api/cart/sync",
"seqKey": "chunk",
"seqPlacement": "cookie",
"sessionIDKey": "visitor_id",
"sessionIDPlacement": "path",
"xPaddingBytes": "100-1000",
"xPaddingHeader": "X-Cache-Status",
"xPaddingKey": "_ts",
"xPaddingMethod": "tokenish"
}
}
使用场景/Use case
Russia's "Default Deny" (Whitelist) TSPU DPI: In some regions, mobile ISPs have
implemented aggressive DPI filters that drop packets (TCP Freeze, no RST sent)
after just 15-20KB of TLS data if the SNI/connection pattern is not explicitly
whitelisted. Standard VLESS+Reality is sometimes not enough to bypass this. The
only reliable workaround is using Xray's xhttp with extreme padding and chunking
(e.g., hiding connection streams inside fake HTTP cookies and headers).
Right now, Karing users are forced to use alternative Xray-core clients (like
Happ) just for these specific configs. Integrating sing-box-extended would make
Karing the ultimate all-in-one anti-censorship tool.
适用系统/Target OS