@gibme/port-forwarder
    Preparing search index...

    Class PortForwarder

    Simple TCP port forwarding service with tracking

    Hierarchy

    • EventEmitter
      • PortForwarder
    Index

    Constructors

    Properties

    interfaces: string[] = ...
    options: Config
    server: TCPServer
    sessions: Memory

    Accessors

    • get ip(): string

      Returns our listening interface

      Returns string

    • get port(): number

      Returns our listening port

      Returns number

    • get timeout(): number

      Returns out timeout

      Returns number

    Methods

    • Creates a connection to the specified IP and port and then pipes it back and forth to the specified socket

      Parameters

      • socket: Socket
      • ip: string
      • port: number
      • timeout: number = ...
      • keepAlive: undefined | boolean = ...

      Returns Promise<boolean>

    • Returns the current connections to the server

      Returns Promise<number>

    • Returns the list of current sessions

      Returns Promise<Session[]>

    • Adds the listener function to the end of the listeners array for the event named eventName. No checks are made to see if the listener has already been added. Multiple calls passing the same combination of eventName and listener will result in the listener being added, and called, multiple times.

      server.on('connection', (stream) => {
      console.log('someone connected!');
      });

      Returns a reference to the EventEmitter, so that calls can be chained.

      By default, event listeners are invoked in the order they are added. The emitter.prependListener() method can be used as an alternative to add the event listener to the beginning of the listeners array.

      import { EventEmitter } from 'node:events';
      const myEE = new EventEmitter();
      myEE.on('foo', () => console.log('a'));
      myEE.prependListener('foo', () => console.log('b'));
      myEE.emit('foo');
      // Prints:
      // b
      // a

      Parameters

      • event: "error"
      • listener: (error: Error, ...args: any[]) => void

        The callback function

      Returns this

      v0.1.101

    • Parameters

      • event: "listening"
      • listener: (ip: string, port: number) => void

      Returns this

    • Parameters

      • event: "close"
      • listener: () => void

      Returns this

    • Parameters

      • event: "connection"
      • listener: (socket: Socket, port: number) => void

      Returns this

    • Parameters

      • event: "forward"
      • listener: (
            remoteAddress: string,
            remotePort: number,
            forwardAddress: string,
            forwardPort: number,
        ) => void

      Returns this

    • Starts the server

      Returns Promise<void>

    • Stops the server

      Returns Promise<void>