Skip to content

A native macOS application that makes port forwards.

License

Notifications You must be signed in to change notification settings

hronro/iPortForwarder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iPortForwarder

A native macOS app built using SwiftUI and Rust, enables you to forward multiple remote ports to your local ports.

Screenshot

screenshot

Download

Go to the GitHub Releases page.

FAQ

Is it possible to save the ports forwarding list? Yes. To save your current forwarding list, click on "File" in the menu bar and select "Save Current Forwarding List." Alternatively, you can press + S. Choose a location to save the file.

To load a saved list, go to "File" in the menu bar and choose "Import Forwarding List." You can also use the shortcut + O. Select the file that you previously saved.

screenshot for saving and loading

Can I run it as a service (automatically forward ports at login)? Yes. To begin, save a forwarding list by pressing + S. Next, open the settings window either from the menu bar or by pressing + ,. Check the "Launch at login" and "Load configurations at startup" checkboxes. Finally, add a previously saved configuration file (you can add multiple files, but ensure they do not conflict with each other).
What does the "Too many open files" error mean? By default, macOS allows a maximum of 256 files to be opened. This means you can forward up to 256 ports, or fewer if your system already has open files. To bypass this limitation, simply run `ulimit -n 2048` (or replace the number with your desired value) in your terminal.
What does the "Permission denied" error mean? This error usually happens when trying to forward a port to a local port below 1024. In macOS, binding a port less than 1024 to 127.0.0.1 needs root privileges, which iPortForwarder currently does not support. However, strangely enough, macOS doesn't require root privileges for binding ports less than 1024 to 0.0.0.0, so you can easily bypass this limitation by enabling the "Allow LAN" option.