Отримуємо білий IP за допомогою VDS за копійки
Всім привіт! У цій статті я розповім, як отримати білу IP-адресу без допомоги провайдера та налаштування вашого роутера, використовуючи звичайний VDS (віртуальний виділений сервер), або як його ще називають "Дедік". За допомогою VDS ви зможете підключатися до вашого комп'ютера за IP-адресою VDS з будь-якого інтернету та будь-якої точки світу, розміщувати сайт на своєму залізі та використовувати його IP-адресу.
Навіщо це може бути потрібно?
Все залежить від ваших потреб та потреб. Ось кілька прикладів використання:
- Підключення до свого комп'ютера через RDP з будь-якої точки світу без необхідності мати білий IP у провайдера.
- Розміщення сайту у відкритому доступі.
- Підніміть ігровий сервер, наприклад, для Minecraft або CS.
Чому не купувати білий IP у провайдера?
Є кілька причин:
- Біла IP-адреса у провайдера може бути дорогою. Наприклад, у мене він коштує 150 руб/міс, тоді як VDS можна взяти за 80 руб/міс.
- Використовуючи VDS, ви не розкриваєте реальну IP-адресу вашого провайдера.
- У випадку DDoS-атаки вона буде спрямована на ваш VDS, а не на ваш домашній інтернет.
Встановлення та налаштування VDS
Крок 1: Купівля VDS
Для початку необхідно придбати VDS сервер. Створіть VDS з будь-якими характеристиками та операційною системою Ubuntu. У моєму випадку я вибрав 1 ядро, 1 ГБ оперативної пам'яті та 100 Мбіт/с інтернет у Москві. Зверніть увагу на локацію сервера, оскільки від неї залежить пінг та швидкість з'єднання.
Крок 2: Отримання даних сервера
Після створення VDS отримайте дані для підключення: IP-адресу, пароль і логін (зазвичай root).
Крок 3: Підключення до сервера
Завантажте програми WinSCP та Putty для взаємодії з сервером. Підключіться до сервера за допомогою їх.
Підключившись до сервера, виконайте такі команди в консолі:
sudo apt update sudo apt install git git clone https://github.com/Nyr/openvpn-install
Перейдіть до папки з інсталятором OpenVPN і запустіть його:
cd openvpn-install bash openvpn-install.sh
Дотримуйтесь інструкцій скрипту:
- Виберіть протокол TCP.
- Натисніть клавішу Enter на другому кроці.
- Виберіть DNS (наприклад, Google).
- Вкажіть назву конфігурації.
Після завершення інсталяції у вас буде файл конфігурації для OpenVPN. Перенесіть його на комп'ютер.
Крок 5: Налаштування OpenVPN на комп'ютері
Завантажте та встановіть OpenVPN на комп'ютер. Двічі клацніть файл конфігурації, щоб імпортувати його та підключитися до VPN. Після підключення VPN призначить вам локальну IP-адресу, наприклад 10.8.0.2.
Крок 6: Відкриття порту та переадресація
Для відкриття порту та переадресації на ваш комп'ютер використовуйте команди:
sudo iptables -I INPUT -p tcp -m tcp --dport 3389 -j ACCEPT sudo iptables -t nat -A PREROUTING -p tcp --dport 3389 -j DNAT --to-destination 10.8.0.2:3389
Тепер, вводячи IP-адресу VDS в RDP, ви підключатиметеся до свого ПК.
Приклади використання
Розміщення сайту
Наприклад піднімемо FastAPI проект на Python, використовуючи IP 10.8.0.2 і порт 80. У консолі відкрийте порт і переадресуйте його:
sudo iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.8.0.2:80
Тепер сайт працюватиме за IP-адресою VDS.
Підняття ігрового сервера
Для сервера Minecraft відкрийте порт 25565 та переадресуйте його:
sudo iptables -I INPUT -p tcp -m tcp --dport 25565 -j ACCEPT sudo iptables -t nat -A PREROUTING -p tcp --dport 25565 -j DNAT --to-destination 10.8.0.2:25565
Вкажіть IP 10.8.0.2 у конфігурації сервера.
Висновок
На цьому все! Сподіваюся, ця стаття була корисною. Успіхів! 😊
Як працює віртуальна мережа?
1) Яким чином гіпервізор створює віртуальний мережевий адаптер і як запит від цього адаптера приходить у фізичний адаптер, і навіщо якщо можна використовувати той самий фізичний адаптер і просто відправити від нього до роутера запит?
2) Якщо у віртуальної машини тип мережного підключення NAT то де (крім фізичного роутера) ця технологія застосовується?
Простий 4 коментаря
і навіщо якщо можна використовувати той самий фізичний адаптер і просто відправити від нього до роутера запит?
Тож ти можеш призначити фіз. адаптер віртуалкам, але вони будуть у мережі роутера, а не у віртуальній мережі, видно як фіз. машини підключені до роутера.
Це потрібно, щоб ізолювати всі віртуалки від основної мережі та не засмічувати ними список клієнтів роутера.
historydev, це я розумію, але що з віртульним адаптером? Я не можу усвідомити це поняття, в тому плані
Як він створюється? Як виглядає "шлях" від віртуального адаптера до фізичного? І де застосовуватися мережа NAT?
і навіщо якщо можна використовувати той самий фізичний адаптер і просто відправити від нього до роутера запит?
Просто так не можна використовувати один адаптер і на хості та на віртуалці. Хоча б як ви відрізните, кому з них адресований пакет, що прийшов з мережі?
Можна повністю віддати віртуалці адаптер мережі, щоб хостова ОС не мала до нього доступу. Тоді вам потрібний ще один адаптер для хоста. А якщо піднімете так 10 вірталок, то буде потрібно 11 фізичних мережевих адаптерів - дуже не економно, коли можна обійтися одним фізичним і десятьма віртуальними.
1. Можна використовувати той самий фізичний адаптер, але як уже написали - не буде ізоляції. А іноді вона потрібна.
2.NAT застосовується скрізь, де він потрібний виходячи із завдання. У випадку з віртуалками NAT йде або на гіпервізорі, або вже на роутері, якщо вибрано режим "міст" для мережі.
Так само NAT використовується на VPN серверах, та й взагалі скрізь де треба "пропустити" трафік через сервер, з заміною адрес.
Два способи:
1. мережний міст/bridge
на хост машині створюється tap пристрій - віртуальний мережевий адаптер, пакети з якого приймає і відправляє додаток - гіпервізор, всі пакети, відправлені на цей пристрій 'зовні', будуть продубльовані як вихідні всередині віртуальної машини і навпаки
Щоб віртуальна машина отримала доступ до зовнішньої мережі, необхідно цей віртуальний адаптер і реальний мережевий інтерфейс хост машини об'єднати в бридж (ip адреса мережі вже призначається цьому мосту), ця дія рівнозначна підключенню двох проводів ethernet (у даному випадку другий - віртуальний) у простий мережевий комутатор - свитч.
Мережний міст можна зібрати з більш ніж двох мережевих адаптерів, наприклад, можна об'єднати мережевий адаптер віртуальної машини + справжній мережевий адаптер + пристрій vpn, і вийде, що всі вони об'єднані в одну локальну мережу.
2. спеціальний драйвер, який симулює прийом і передачу пакетів прямо на обраний мережевий пристрій (так робить наприклад virtualbox на windows), на відміну від мережевого моста, можна зробити тільки з одним пристроєм.
3.насправді способів більше, у qemu можна з'єднати гостьовий мережевий пристрій з додатком на хост системі безпосередньо (не потрібні драйвера), так само можна ні з чим не з'єднувати, але можна прокинути порт зовні в гостьовий (або з'єднати тільки з іншою віртуальною машиною, вийде приватна внутрішня мережа, до якої мають доступ лише віртуалки) та інші дивні конфіги.
Якщо використовується NAT, то всередині гіпервізора піднімається віртуальний роутер, доступу до якого у користувача зазвичай немає, зовнішній мережевий інтерфейс цього віртуального роутера так само по одному з вищеописаних способів підключається до хост системи.
Я не можу зрозуміти тільки цю деталь: як віртуальний адаптер створює електронний сигнал, який доходить до фізичного адаптера? Чи можна докладніше про цей процес?