2022-07-08 10:10:39 +00:00
|
|
|
`socks` inbound is a http server.
|
|
|
|
|
|
|
|
### Structure
|
|
|
|
|
|
|
|
```json
|
|
|
|
{
|
|
|
|
"inbounds": [
|
|
|
|
{
|
|
|
|
"type": "http",
|
|
|
|
"tag": "http-in",
|
|
|
|
|
|
|
|
"listen": "::",
|
|
|
|
"listen_port": 2080,
|
|
|
|
"tcp_fast_open": false,
|
|
|
|
"sniff": false,
|
|
|
|
"sniff_override_destination": false,
|
|
|
|
"domain_strategy": "prefer_ipv6",
|
|
|
|
|
|
|
|
"users": [
|
|
|
|
{
|
|
|
|
"username": "admin",
|
|
|
|
"password": "admin"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
### Listen Fields
|
|
|
|
|
|
|
|
#### listen
|
|
|
|
|
2022-07-09 01:26:50 +00:00
|
|
|
==Required==
|
|
|
|
|
2022-07-08 10:10:39 +00:00
|
|
|
Listen address.
|
|
|
|
|
|
|
|
#### listen_port
|
|
|
|
|
2022-07-09 01:26:50 +00:00
|
|
|
==Required==
|
|
|
|
|
2022-07-08 10:10:39 +00:00
|
|
|
Listen port.
|
|
|
|
|
|
|
|
#### tcp_fast_open
|
|
|
|
|
|
|
|
Enable tcp fast open for listener.
|
|
|
|
|
|
|
|
#### sniff
|
|
|
|
|
|
|
|
Enable sniffing.
|
|
|
|
|
|
|
|
Reads domain names for routing, supports HTTP TLS for TCP, QUIC for UDP.
|
|
|
|
|
|
|
|
This does not break zero copy, like splice.
|
|
|
|
|
|
|
|
#### sniff_override_destination
|
|
|
|
|
|
|
|
Override the connection destination address with the sniffed domain.
|
|
|
|
|
|
|
|
If the domain name is invalid (like tor), this will not work.
|
|
|
|
|
|
|
|
#### domain_strategy
|
|
|
|
|
|
|
|
One of `prefer_ipv4` `prefer_ipv6` `ipv4_only` `ipv6_only`.
|
|
|
|
|
|
|
|
If set, the requested domain name will be resolved to IP before routing.
|
|
|
|
|
|
|
|
If `sniff_override_destination` is in effect, its value will be taken as a fallback.
|
|
|
|
|
|
|
|
### HTTP Fields
|
|
|
|
|
|
|
|
#### users
|
|
|
|
|
|
|
|
HTTP users.
|
|
|
|
|
|
|
|
No authentication required if empty.
|