Delphi ve NAT

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
ahmet_sinav
Üye
Mesajlar: 263
Kayıt: 17 Nis 2004 07:44
Konum: İzmir Yeşilyurt Ulu Cami
İletişim:

Delphi ve NAT

Mesaj gönderen ahmet_sinav »

iyi çalışmalar arkadaşlar;
Program içerisinden müşterinin bilgisayarındaki ADSL modeme NAT ayarlarını yapmak için Win Api, dll vs.. var mı acaba? Nette bir sonuç elde edemedim belki uğraşan vardır. Bunlar yoksa tek çare ADSL'in SET sayfasını açtırıp gerekli ayarları yaptırmam muhtemelen. Fakat win api, dll gibi bir sınıf varsa çok büyük kolaylık olacak.
Saygılar;
İmam Süleyman Yakub <==> Molla Mustafa Mansur
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

Merhaba bunların hiçbirine ihtiyacın yok. Sonuçta WEB Site Navigasyonu gibi bir işlemdir

Ben kendi ADSL modem ayarlarımı Delphi'de yaptığım projeden kumanda ediyorum. Bağlantı kontrolü, Sinyal / Gürültü miktar ve oranı, Port açma yönlendirme vs.

- Modem marka ve modeline göre değişen komut setleri var. Bende Zoom X5 ADSL Modem var. Ona göre kodlar örneğin şöyle...

Kod: Tümünü seç

//TCP Yönlendir// http://10.0.0.2/doc/setvs.htm?WINDWEB_URL=%2Fdoc%2Fsetvsww.htm&VSERVER_ID_DELETE_H=0&VSERVER_ID_H=7&VSERVER_PORT_PUBLIC_START_H=4650&VSERVER_PORT_PUBLIC_END_H=4650&VSERVER_PORT_PRIVATE_H=4650&VSERVER_PORT_TYPE_H=6&VSERVER_IP_H=10.0.0.7
//UDP Yönlendir// http://10.0.0.2/doc/setvs.htm?WINDWEB_URL=%2Fdoc%2Fsetvsww.htm&VSERVER_ID_DELETE_H=0&VSERVER_ID_H=8&VSERVER_PORT_PUBLIC_START_H=4655&VSERVER_PORT_PUBLIC_END_H=4655&VSERVER_PORT_PRIVATE_H=4655&VSERVER_PORT_TYPE_H=17&VSERVER_IP_H=10.0.0.7
//TCP Yönlendirme iptal// http://10.0.0.2/doc/setvs.htm?WINDWEB_URL=%2Fdoc%2Fsetvsww.htm&VSERVER_ID_DELETE_H=7&VSERVER_ID_H=0&VSERVER_PORT_PUBLIC_START_H=0&VSERVER_PORT_PUBLIC_END_H=0&VSERVER_PORT_PRIVATE_H=0&VSERVER_PORT_TYPE_H=6&VSERVER_IP_H=
//UDP Yönlendirme iptal// http://10.0.0.2/doc/setvs.htm?WINDWEB_URL=%2Fdoc%2Fsetvsww.htm&VSERVER_ID_DELETE_H=8&VSERVER_ID_H=0&VSERVER_PORT_PUBLIC_START_H=0&VSERVER_PORT_PUBLIC_END_H=0&VSERVER_PORT_PRIVATE_H=0&VSERVER_PORT_TYPE_H=6&VSERVER_IP_H=
- Bunlar ile belirtildiği üzere Virtual Server altında port yönlendirme veya iptali için kullanılıyor. Sende de NAT sayfasındaki HTML kaynak koda bakarak bastığın buton veya yaptığın girişlere göre html kaynak kodun nasıl davrandığını anlayarak bunu delphi içinden basit bir TWebBrowser ile emule ederek uygulayabilir sonuç içeriğini yorumlayabilirsin.
Resim
Resim ....Resim
Kullanıcı avatarı
undefined
Moderator
Mesajlar: 565
Kayıt: 06 Eki 2003 12:01
Konum: Bursa
İletişim:

Mesaj gönderen undefined »

NAT'ta otomatik port yönlendirme işini Azureus bt client yapıyor. Biraz araştırdıktan sonra gördümki adamlar bu NAT'ta yönlendirme problemerinin otomatik çözümlenmesi için bir standart oluşturmuşlar.

Aslında UPNP denen ve network yoluya birçok cihazın birbirileriyle uyum oluşturması ve uzaktan kontrolü için oluşturulan bir standardlar paketinin bir parçası olarak geliştirmişler bunu. Adıda UPNP NAT traversal / Internet gateway protocol (IGD).

UPNP'nin düzgün delphi implemantasyonunu bulamadım.
http://www.whitebear.ch/ Burda componentler var fakat örnek yok ve bana güven vermedi.

Microsoft UPNP için COM yolulya api sunuyor, bunları kullanabilirsin. Delphi örneği yok fakat c++ örneği var : http://www.codeproject.com/internet/PortForward.asp

Yararlı kaynaklar:
http://en.wikipedia.org/wiki/Universal_Plug_and_Play
http://www.microsoft.com/technet/prodte ... pnp01.mspx
UPNP Apis:
http://msdn2.microsoft.com/en-us/library/aa382303.aspx
Network Address Translation Traversal Reference:
http://msdn2.microsoft.com/en-us/library/aa366276.aspx
Kullanıcı avatarı
ahmet_sinav
Üye
Mesajlar: 263
Kayıt: 17 Nis 2004 07:44
Konum: İzmir Yeşilyurt Ulu Cami
İletişim:

Mesaj gönderen ahmet_sinav »

cevaplar için teşekkürler.
müşterilerimde genelde ttnetin verdiği airties modemler mevcut mrmarman hocanın dediği şekilde bir yol izleyerek çok basit bir şekilde olayı halledebilirim. fakat undefined'ın gösterdiği UPNP olayı için dağıtılan API olayını da inceliyecem.
Saygılar;
İmam Süleyman Yakub <==> Molla Mustafa Mansur
Cevapla