func (r *Relay) PacketsForwarded() uint64 {
	return atomic.LoadUint64(&r.packetsForwarded)
}
PacketsForwarded gets the amount of forwarded packets
package icmp34relay
import (
	"net"
	"sync"
	"sync/atomic"
	"github.com/google/gopacket/layers"
	"github.com/google/gopacket/pcap"
	"github.com/pkg/errors"
	"go.uber.org/zap"
	"golang.org/x/net/ipv4"
)
const (
	snapLen = 1514
	ttl     = 64
	ethHLen = 14
)
type Relay struct {
	ifName           string
	backends         []net.IP
	rc               *ipv4.RawConn
	pc               *pcap.Handle
	wg               sync.WaitGroup
	stop             chan struct{}
	logger           *zap.Logger
	packetsForwarded uint64
}
func New(ifName string, backends []net.IP) (*Relay, error) {
	logger, err := zap.NewProduction()
	if err != nil {
		return nil, errors.Wrap(err, "Unable to get logger")
	}
	return &Relay{
		ifName:   ifName,
		backends: backends,
		stop:     make(chan struct{}),
		logger:   logger,
	}, nil
}