2.0.4 • Published 10 months ago

@achingbrain/nat-port-mapper v2.0.4

Weekly downloads
-
License
Apache-2.0 OR MIT
Repository
github
Last release
10 months ago

@achingbrain/nat-port-mapper

codecov CI

Port mapping with UPnP and NAT-PMP

About

Example

import { upnpNat } from '@achingbrain/nat-port-mapper'

const client = await upnpNat({
  // all fields are optional
  ttl: number // how long mappings should live for in seconds - min 20 minutes, default 2 hours
  description: string // default description to pass to the router for a mapped port
  gateway: string // override the router address, will be auto-detected if not set
  keepAlive: boolean // if true, refresh the mapping ten minutes before the ttl is reached, default true
})

// Map public port 1000 to private port 1000 with TCP
await client.map(1000, {
  protocol: 'TCP'
})

// Map public port 2000 to private port 3000 with UDP
await client.map(3000, {
  publicPort: 2000,
  protocol: 'UDP'
})

// Unmap previously mapped private port 1000
await client.unmap(1000)

// Get external IP
const externalIp = await client.externalIp()

console.log('External IP:', ip)

// Unmap all mapped ports
await client.close()

Credits

Based on alxhotel/nat-api

Additional Information

Install

$ npm i @achingbrain/nat-port-mapper

License

Licensed under either of

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

1.0.18

10 months ago

1.0.17

10 months ago

1.0.16

10 months ago

2.0.3

10 months ago

2.0.2

10 months ago

2.0.4

10 months ago

2.0.1

10 months ago

2.0.0

10 months ago

1.0.15

11 months ago

1.0.14

11 months ago

1.0.13

2 years ago

1.0.11

2 years ago

1.0.10

2 years ago

1.0.12

2 years ago

1.0.9

2 years ago

1.0.8

2 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.2

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago

0.0.0

3 years ago