FRP Мост между локальной сетью и интернетом

24 Jun, 2026
107,527
🔱 15,078
👥 1,564

Зачем нужен FRP?

Представьте ситуацию: у вас есть сервер в локальной сети без белого IP, но вам нужно дать к нему доступ извне. Или хотите показать клиенту сайт, который крутится на вашем ноутбуке. Обычно это требует сложной настройки роутера или покупки VPS. Но есть решение проще — FRP.

FRP (Fast Reverse Proxy) — это легкий reverse proxy на Go, который создает безопасные туннели через NAT и фаерволы. Проект с открытым исходным кодом, звезд на GitHub уже больше 96 тысяч!

Как это работает?

Архитектура FRP проста:

  1. frps (server) — работает на машине с белым IP
  2. frpc (client) — работает в локальной сети

Архитектура FRP

Клиент подключается к серверу, и сервер начинает проксировать запросы из интернета в вашу локальную сеть.

Реклама

5 главных возможностей

  1. Доступ к SSH за NAT
[[proxies]]
name = "ssh"
type = "tcp"
localPort = 22
remotePort = 6000

Теперь можно подключиться: ssh -p 6000 user@server_ip

  1. Публикация веб-сервисов
[[proxies]]
name = "web"
type = "http"
localPort = 80
customDomains = ["myapp.example.com"]
  1. P2P-режим для прямого соединения между клиентами (минуя сервер)

  2. Шифрование и сжатие трафика

  3. Балансировка нагрузки между несколькими экземплярами сервиса

Неочевидные применения

  • Доступ к API локальной разработки из мобильного приложения
  • Демонстрация проектов клиентам без деплоя
  • Объединение серверов в разных сетях в виртуальную LAN
  • Проксирование UDP-сервисов (например, игровых серверов)

Почему FRP, а не...?

  • Ngrok: FRP бесплатен и дает полный контроль
  • SSH tunnels: FRP проще в настройке и поддерживает больше протоколов
  • VPN: Не требует сложной настройки на клиентских устройствах

Под капотом

  • Написан на Go — работает быстро и без зависимостей
  • Поддерживает TCP, UDP, HTTP, HTTPS
  • Есть встроенный веб-интерфейс для мониторинга
  • Конфигурация в TOML/YAML/JSON

Как начать?

  1. Скачайте бинарники для вашей ОС из релизов
  2. Настройте frps.toml на сервере:
bindPort = 7000
  1. Настройте frpc.toml на клиенте:
serverAddr = "your_server_ip"
serverPort = 7000

[[proxies]]
name = "ssh"
type = "tcp"
localPort = 22
remotePort = 6000
  1. Запустите frps и frpc

FRP — это:

✅ Простота настройки ✅ Гибкость (поддержка многих протоколов) ✅ Безопасность (шифрование, аутентификация) ✅ Открытый исходный код

Идеально подойдет:

  • Разработчикам для демонстрации проектов
  • Админам для удаленного управления серверами
  • Геймерам для создания игровых серверов
  • IT-энтузиастам для экспериментов с сетевыми технологиями

Попробуйте FRP — и вы удивитесь, как много проблем он решает одной простой утилитой!

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.