Şimdi Ara

Tüm İSS'ler için ngrok kullanarak CGNAT IP ile port açma rehberi [Linux]

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
17
Cevap
9
Favori
3.581
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
5 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Dünyadaki yetersiz IPv4 adresi sayısından dolayı internet servis sağlayıcıları IPv4 kullanan birçok kullanıcıyı aynı ip adresi üzerinden internete çıkarıyor. CGNat (Carrier Grade NAT) birden fazla internet kullanıcısının aynı ip adresi ile internet ortamına çıkmasını sağlayan teknolojidir. Gelişmiş ülkelerde bu soruna çözüm olarak kullanıcılara birçok kişi tarafından kullanılan IPv4 adreslerinin yanı sıra miktarı konusunda sorun olmayan, kullanıcının kendisine özgü IPv6 adresleri verilmektedir, tüm servisler IPv6 desteklemese bile yıllar içinde IPv6'nın yaygınlaşmasıyla bu sorun aşılma noktasına gelmiştir. IPv6'ya geçiş yapılmayan bazı ülkelerde ise İSS'ler kullanıcılara IPv6 sağlamamakla birlikte, CGNat havuzunda olmayan gerçek bir dinamik ip talep etmeleri üzerine isteklerini reddetmekte ve port açmalarının tek yolunun fahiş fiyata sattıkları statik ip adresi satın almaktan geçtiğini söylemektedir.


    Türkiye'de Turknet IPv6 denemelerine başlamış durumda.


    Ülkelere göre IPv6 kullanımı: https://www.google.com/intl/en/ipv6/statistics.html#tab=per-country-ipv6-adoption




    Bu konuda statik ip satın almadan nasıl port açabileceğinizi anlatacağım. Bunun için https://ngrok.com/ adresindeki ngrok yazılımını kullanacağız. Burada kritik nokta ücretsiz paketi kullanacağımız için programı kapattığınız zaman adresiniz kayboluyor ve tekrar çalıştırdığınız zaman başka bir adres atanıyor. Ben bunun önüne geçmek için 7/24 açık kalan, Pi-hole çalıştırmak için kullandığım kesintisiz güç kaynağına bağlı Raspberry Pi alternatifi Orange Pi Zero cihazını kullanıyorum. Linux işletim sistemini çalıştıran herhangi bir bilgisayar kullanabilirsiniz.


    Gerekenler:

    SSH ile erişebildiğiniz ağınızdaki bir Linux bilgisayar

    Modem arayüzüne giriş yapabilmek


    İlk önce https://ngrok.com/ web sitesi üzerinden Sign Up butonuna basıp bilgilerimizi girerek üye olmamız gerekiyor. Üye olduktan sonra linux bilgisayarımıza PuTTY ile SSH üzerinden giriş yapıyoruz. Ngrok yazılımını kurmak için snap kullanmayı tercih ediyorum.


    sudo apt update


    sudo apt install snapd


    sudo snap install ngrok


    Henüz programı çalıştırmıyoruz, çünkü direkt SSH oturumumuz üzerinden çalıştırırsak SSH penceresini kapattığımızda ngrok da kapanır ve adresimizi kaybederiz. Biz SSH bağlantısını kessek bile arka planda çalışmasını istiyoruz.


    Bunun için Screen programını kullanacağız.


    sudo apt install screen


    Komutuyla programı yüklüyoruz.


    SSH bağlantısını kestiğimiz zaman ngrok'un arka planda çalışması için bir screen penceresi açacağız. Ben ismi ngrok olan bir screen penceresi açmak istiyorum, bunun için:


    screen -S ngrok


    komutunu giriyoruz ve karşımıza gelen pencereye https://dashboard.ngrok.com/login adresindeki "2. Connect your account" yazan yerin altındaki komutu başında ./ olmadan gireceğiz. ./ sağından itibaren kopyalayıp komutu giriyoruz. Auth token kodunu sallıyorum, siz kendinizinkini kopyalayıp gireceksiniz. Şu formatta olacak:


    ngrok authtoken fdhjgbsıygg7e55bge5yubhg5sehphbnse7u5b495bh


    Bu komutu girip Enter yaptıktan sonra ngrok hesabımıza giriş yapmış bulunuyoruz.


    Şimdi sıra geldi port açmaya. Ben portu günlük kullandığım masaüstü bilgisayarım için açacağım, eğer portu ngrok kurduğunuz bilgisayardan farklı bir cihaz için açacaksanız port açacağınız cihazın ağınız üzerindeki IPv4 adresini bilmeniz gerek, bunu öğrenmek için modemin arayüzüne giriş yapıp bakabilirsiniz veya Windows kullanan bilgisayarlar için cmd kullanarak ipconfig komutunu girerek öğrenebilirsiniz. (Modem arayüzünden bu DHCP adresini statik olarak ayarlarsak bilgisayarı açıp kapattığımızda bu adres aynı kalacaktır, ben böyle yaptım. Zyxel modem arayüzünde cihazın ismine tıklayıp>Bilgi çıkan penceredeki kutucuğu işaretleyerek yapılabiliyor.)

    ipconfig komutu ile CMD üzerinde:


    IPv4 Address. . . . . . . . . . . : 192.168.1.35 gibi görünecektir.


    192.168.1.35 adresli cihaz için 1881 numaralı tcp portunu açacağım.


    Bunun için Screen açık olan SSH pencereme:


    ngrok tcp 192.168.1.35:1881


    yazıp enter yapıyorum. Ngrok saniyeler içinde bağlanacak ve Forwarding yazan yerin yanında bir adres oluşturacak. Bu adres tcp://2.tcp.ngrok.io:15672 -> 192.168.1.35:1881 gibi görünüyor. "tcp://" yazan kısmı bize lazım değil. Adresimiz bu ve portumuz buna benzer: 2.tcp.ngrok.io:15672 Bu adrese gelen bağlantılar ağımızda 192.168.1.35:1881 adresine yönleniyor.


    Daha detaylı kullanım için burayı okuyabilirsiniz: https://ngrok.com/docs


    Tüm İSS'ler için ngrok kullanarak CGNAT IP ile port açma rehberi [Linux]


    Bu adresi bir yere kaydediyoruz.


    https://www.yougetsignal.com/tools/open-ports// adresinden portumuzun açık olup olmadığını kontrol ediyoruz. Port açık ve erişilebilir durumda.


    Tüm İSS'ler için ngrok kullanarak CGNAT IP ile port açma rehberi [Linux]




    Screen ile işimiz bittiği için Screen'i arka plana atacağız ve bu pencere arka planda çalışmaya devam ederek adresimizi ve portu çevrimiçi tutacak. Bunun için klavyemizde:


    Ctrl+a+d ile screen oturumunu detach ediyoruz. screen -list yazarak arka planda çalışan screen oturumunu görebiliriz. İşimiz bitti. exit yazarak SSH oturumunu kapatabiliriz. Bazen bug oluyor ve screen detach olmuyor, öyle olursa pencereyi kapatıp en baştan yapmanız gerek. Artık CGNat'a rağmen port açabilmeyi öğrendiğinize göre oyun sunucusu mu barındırırsınız, ip kameranız için mi port açarsınız orası size kalmış. Eğer port açık görünmezse modemin veya bilgisayarın güvenlik duvarını kapatarak tekrar kontrol edebilirsiniz.




    < Bu mesaj bu kişi tarafından değiştirildi myalperen -- 20 Aralık 2020; 8:49:46 >







  • teşekkürler

  • Güzel anlatım. Linux için olması kötü sadece. Windows için olmuyor mu bu?

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Bu haliyle hamachi bile daha kolay sanki. Tek avantajı client tarafında program ihtiyacı olmaması ancak server tarafı çok sakat Linux vs. ip adresinin değişmesi en büyük sıkıntı elektrik gitti geldi bilgisayara erişimin kesildi direk. Yok mu bunun bi ddns ayarı? Bu kadar tantanaya katlanacağıma türknette ayda 12 lira gider statik ip alırım zaten.

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Teşekkürler hocam

  • berkayjan kullanıcısına yanıt

    Windows üzerinde de kullanabilirsiniz. Ben halihazırda Orange Pi çalıştırdığım için bu şekilde kullanıyorum.


    @unununium Aslında çok basit bir işlem ama sıfırdan anlattığım için zormuş gibi görünüyor. Sabit ip satın almadan ve client tarafında bir yazılım kullanmadan dışardan erişim için tek ücretsiz yol bu. Konuda belirttiğim gibi UPS kullandığım için elektrik kesintileri beni etkilemiyor. Konuyu açtıktan sonra openwrt destekli bir router aldım ve üzerine ZeroTier kurdum, ağdaki cihazlara onu kullanarak erişim sağlıyorum.

  • arkadaslar bu tunelleme yalniz. US sunucusu oldugunda paketleriniz amerika'yi dolanacaktir, yani oyun oynamak pek mumkun olmaz bu yontem ile. gelistirme yapanlar icin veya evinden basit bir sunucu acmak isteyenler icin kullanisli.

  • Hocam konu çok işime yaradı teşekkür ederim öncelikle sizden sonrada bu konuyu bana gösteren arkadaştan Allah razı olsun.


    ngrok tcp 192.168.1.35:1881 yazmak yerine

    ngrok tcp 192.168.1.35:1881 -region eu yazmanınızı tavsiye ederim daha düşük ping için. Varsayılan olarak Amerika da açıyor sanırsam sunucuyu EU da açmak oyun vs. için faydalı olacaktır. (+bilginin sahibi ve bu konuyu bana atan Videoyun dc sindeki arkadaşa teşekkür ederim)

  • Eskiden Serveo vardı. Sanırım kapanmış...

  • ngrok max kac dakika online kaliyor? max tahminen saat basi komut girmek lazim

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • ÇevreMühendisi kullanıcısına yanıt

    Bir süre sınırı yok.

  • zerotier one kullanmak daha mantikli

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • enigma2 uydu alicilari malum linuxle calisiyor bunlarda da olabilirmi bu tip bir port acma olayi.

  • zerotier tavsiye ederim. windows desteği mevcut.

  • IP kamera için kullanmak istiyorum ama Orange Pi Zero'nun da fiyatı kamera kadar. Alternatif kart var mı? Yoksa ESP32-CAM ile kendi kameramı yapacağım artık.

  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.