mirror of
https://gitee.com/IrisVega/frp.git
synced 2024-11-01 22:31:29 +08:00
33 lines
1.3 KiB
Markdown
33 lines
1.3 KiB
Markdown
|
# go-proxyproto
|
||
|
|
||
|
[![Build Status](https://travis-ci.org/pires/go-proxyproto.svg?branch=master)](https://travis-ci.org/pires/go-proxyproto)
|
||
|
[![Coverage Status](https://coveralls.io/repos/github/pires/go-proxyproto/badge.svg?branch=master)](https://coveralls.io/github/pires/go-proxyproto?branch=master)
|
||
|
[![Go Report Card](https://goreportcard.com/badge/github.com/pires/go-proxyproto)](https://goreportcard.com/report/github.com/pires/go-proxyproto)
|
||
|
|
||
|
A Go library implementation of the [PROXY protocol, versions 1 and 2](http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt),
|
||
|
which provides, as per specification:
|
||
|
> (...) a convenient way to safely transport connection
|
||
|
> information such as a client's address across multiple layers of NAT or TCP
|
||
|
> proxies. It is designed to require little changes to existing components and
|
||
|
> to limit the performance impact caused by the processing of the transported
|
||
|
> information.
|
||
|
|
||
|
This library is to be used in one of or both proxy clients and proxy servers that need to support said protocol.
|
||
|
Both protocol versions, 1 (text-based) and 2 (binary-based) are supported.
|
||
|
|
||
|
## Installation
|
||
|
|
||
|
```shell
|
||
|
$ go get -u github.com/pires/go-proxyproto
|
||
|
```
|
||
|
|
||
|
## Usage
|
||
|
|
||
|
### Client (TODO)
|
||
|
|
||
|
### Server (TODO)
|
||
|
|
||
|
## Documentation
|
||
|
|
||
|
[http://godoc.org/github.com/pires/go-proxyproto](http://godoc.org/github.com/pires/go-proxyproto)
|