~> **Note:** [Envoy](/docs/connect/proxies/envoy) should be used for production deployments, or when [layer 7 traffic management](/docs/connect/l7-traffic-management) features are needed.
To get started with the built-in proxy and see a working example you can follow the [Getting Started](https://learn.hashicorp.com/consul/getting-started/connect) guide.
## Proxy Config Key Reference
Below is a complete example of all the configuration options available
for the built-in proxy.
```javascript
{
"service": {
...
"connect": {
"proxy": {
"config": {
"bind_address": "0.0.0.0",
"bind_port": 20000,
"tcp_check_address": "192.168.0.1",
"disable_tcp_check": false,
"local_service_address": "127.0.0.1:1234",
"local_connect_timeout_ms": 1000,
"handshake_timeout_ms": 10000,
"upstreams": [...]
},
"upstreams": [
{
...
"config": {
"connect_timeout_ms": 1000
}
}
]
}
}
}
}
```
All fields are optional with a sane default.
- <a name="bind_address"></a>
<a href="#bind_address">`bind_address`</a> - The address the proxy will bind it's
_public_ mTLS listener to. It defaults to the same address the agent binds to.
- <a name="bind_port"></a>
<a href="#bind_port">`bind_port`</a> - The port the proxy will bind it's _public_
mTLS listener to. If not provided, the agent will attempt to assign one from its