nat/pmp.go
func (n *npmp) AddMapping(protocol string, extPort, intPort int,
	name string, lifetime time.Duration) error {
	if lifetime <= 0 {
		return ErrTooShortLifetime
	}
	_, err := n.c.AddPortMapping(strings.ToLower(protocol),
		intPort, extPort, int(lifetime/time.Second))
	return err
}
func (n *npmp) AddMapping(protocol string, extPort, intPort int,
	name string, lifetime time.Duration) error {
	if lifetime <= 0 {
		return ErrTooShortLifetime
	}
	_, err := n.c.AddPortMapping(strings.ToLower(protocol),
		intPort, extPort, int(lifetime/time.Second))
	return err
}
// AddMapping maps an external port to a local port for a specific
// service to NAT-PMP interface.