PortQry komut satırı aracını kullanma

PortQry, TCP/IP bağlantı sorunlarını gidermeye yardımcı olmak için kullanabileceğiniz bir komut satırı aracıdır. Bu araç, yerel bir bilgisayardaki veya uzak bilgisayardaki hedef TCP ve Kullanıcı Veri Birimi Protokolü (UDP) bağlantı noktalarının durumunu bildirir. Ayrıca yerel bilgisayarın bağlantı noktası kullanımı hakkında ayrıntılı bilgi sağlar.

PortQry'nin sorun giderme aracı olarak kullanılması amaçlandığından, belirli bir sorunu gidermek için bu aracı kullanan kullanıcıların bilgi işlem ortamları hakkında yeterli bilgiye sahip olması gerekir.

PortQry'i birkaç moddan birinde komut isteminden kullanabilirsiniz:

  • Komut satırı modu. Yerel veya uzak bilgisayarlarda sorun gidermek için bu modu kullanabilirsiniz.
  • Yerel mod. Bu modda, yerel bilgisayarda sorun gidermeye yönelik çeşitli parametreler kullanabilirsiniz.
  • Etkileşimli mod. Komut satırı moduna benzer, ancak kısayol komutlarını ve parametrelerini kullanabilirsiniz.

Not

PortQry için grafik kullanıcı arabirimi içeren PortQryUI adlı ayrı bir aracı indirebilirsiniz. PortQryUI, PortQry'nin kullanılmasını kolaylaştırabilecek çeşitli özelliklere sahiptir. PortQryUI aracını almak için bkz. PortQry Komut Satırı Bağlantı Noktası Tarayıcısı için PortQryUI - Kullanıcı Arabirimi.

Şunlar için geçerlidir: Desteklenen Windows sürümleri

PortQry testleri ve sonuçları

Tipik bağlantı noktası tarama araçları, hedef UDP bağlantı noktası bir İnternet Denetim İletisi Protokolü (ICMP) "Hedefe ulaşılamıyor" iletisi döndürmezse bağlantı noktasının DINLEME durumuna sahip olduğunu bildirir. Bu sonuç, aşağıdaki nedenlerden biri veya her ikisi için doğru olmayabilir:

  • Yönlendirilmiş bir veri birimine yanıt yoksa hedef bağlantı noktası FILTERED olabilir.
  • Çoğu hizmet, kendilerine gönderilen biçimlendirilmemiş bir kullanıcı veri birimine yanıt vermez. Genellikle, bağlantı noktasını dinleyen hizmet veya program yalnızca belirli bir oturum katmanı veya uygulama katmanı protokolü kullanan bir iletiye yanıt verir.

PortQry, daha doğru ve yararlı sonuçlar elde etmek için iki aşamalı bir test işlemi kullanır.

1. Adım: Bağlantı noktası durum testi

PortQry bir bağlantı noktasının durumunu üç değerden biri olarak bildirir:

  • DİnLEME: Bu yanıt, bir işlemin hedef bağlantı noktasında dinlediğini gösterir. PortQry hedef bağlantı noktasından bir yanıt aldı.
  • DİnLENMIYOR: Bu yanıt, hedef bağlantı noktasında hiçbir işlemin dinlemediğini gösterir. PortQry, hedef bağlantı noktasından aşağıdaki ICMP iletilerinden birini aldı:

    Hedefe ulaşılamıyor Bağlantı Noktasına ulaşılamıyor

  • FİlTRELENDİ: Bu yanıt, hedef bağlantı noktasının filtrelendiğini gösterir. PortQry hedef bağlantı noktasından yanıt almadı. Bir işlem hedef bağlantı noktasında dinliyor olabilir veya olmayabilir. Varsayılan olarak, PortQry FILTERED yanıtı döndürmeden önce tcp bağlantı noktasını üç kez sorgular ve FILTERED yanıtı döndürmeden önce bir UDP bağlantı noktasını bir kez sorgular.

2. Adım: Özel testler

Hedef UDP bağlantı noktasından yanıt alınmazsa, PortQry bağlantı noktasının DİnLENDİ veya FİlTRELEN olduğunu bildirir. Ancak bir bağlantı sorununu giderirken bağlantı noktasının filtrelenip filtrelenmediğini veya dinlediğini bilmek yararlı olur. Bu durum özellikle bir veya daha fazla güvenlik duvarı içeren bir ortamda geçerlidir.

PortQry, hedef bağlantı noktasında dinleyen hizmet veya programla etkileşim kurabilen ikinci bir test kümesi kullanarak bağlantı noktası durum raporunu iyileştirebilir. Bu test için PortQry aşağıdakileri yapar:

  • PortQry, hangi hizmetin her bağlantı noktasını dinlediğini belirlemek için %SYSTEMROOT%\System32\Drivers\Etc klasöründe bulunan Hizmetler dosyasını kullanır.
  • PortQry, beklenen hizmet veya program için özel olarak oluşturulan bir ileti oluşturur ve ardından bu iletiyi hedef bağlantı noktasına gönderir. Hizmete veya programa bağlı olarak, ileti aşağıdakiler gibi sorun giderme için yararlı bilgiler isteyebilir:
    • Etki alanı ve etki alanı denetleyicisi bilgileri (LDAP sorguları)
    • Kayıtlı istemci hizmetleri ve bağlantı noktaları (RPC sorguları)
    • Anonim erişime izin verilip verilmeyeceği (FTP sorguları)
    • MAC adresi (NetBIOS sorguları)
    • Mspclnt.ini dosya bilgileri (ISA Sunucusu sorguları)
  • PortQry, test raporunun bir parçası olarak hizmetten veya programdan gelen yanıtı ayrıştırıp biçimlendirir ve döndürür.

Yerel bilgisayarda sorun gidermeye ilişkin ek testler

PortQry'yi yüklediğiniz bilgisayarda bağlantı noktalarının sorunlarını gidermeniz gerektiğinde, yerel modda PortQry'yi kullanın. Komut satırında yerel mod parametrelerini kullandığınızda, yerel bilgisayarda aşağıdaki gibi görevleri gerçekleştirebilirsiniz:

  • Bağlantı noktası eşlemelerini listeleme
  • Değişiklikler için belirli bir bağlantı noktasını izleme
  • Değişiklikler için belirli bir işlemi izleme

Daha fazla bilgi için bkz. Yerel (komut satırı) modunda PortQry kullanma.

Komut satırı modunda PortQry kullanma

PortQry'yi bir komut isteminde diğer komut satırı araçlarıyla aynı şekilde çalıştırabilirsiniz. Bu makaledeki örneklerin çoğunda komut satırı PortQry komutları gösterilir. Komut satırı modunda, hangi sorgunun çalıştırılacağını ve nasıl çalıştırılacağını belirtmek için komut dizesine birden çok seçenek ekleyebilirsiniz. PortQry'yi komut satırı modunda çalıştırmak için aşağıdaki söz dizimini kullanan bir komut çalıştırın:

portqry.exe -n <name_to_query> [options]

Not

Bu komutta, <name_to_query> sorgu için IP adresi, bilgisayar adı veya etki alanıdır. Bu parametre gereklidir. [options] isteğe bağlı parametrelerdir.

Komut satırı modu için PortQry parametreleri

Aşağıdaki parametreler normal komut satırı modunda kullanılabilir:

Parametre Açıklama Açıklamalar
-n <name> Belirli hedefi sorgulama
  • Bu, komut satırı modu için gereken tek parametredir.
  • Ad>< değeri, sorguya alınacak bilgisayarın adını veya IP adresini temsil eder. Bu değer boşluk içeremez.
-p <protocol> Belirtilen protokolü kullanma
  • Protokol>< değeri, sorgu için bağlantı noktasının türünü temsil eder (olası değerler tcp, udpveya both).
  • Varsayılan değer şeklindedir tcp.
-e <port_number> Hedef bağlantı noktasını belirtin ("uç nokta" olarak da bilinir)
  • <port_number> değeri, hedef bilgisayarda sorgu için bağlantı noktasını temsil eder.
  • Varsayılan değer şeklindedir 80.
-o <port_number>,<port_number> Bir dizide birden çok hedef bağlantı noktası belirtme <port_number,port_number>>< değerleri, sırayla sorgulanan bağlantı noktası numaralarının virgülle ayrılmış listesini temsil eder. Virgüllerin çevresinde boşluk kullanmayın.
-r <port_number>:<port_number> Hedef bağlantı noktası aralığını belirtme
  • <port_number>:<port_number> değerleri, iki nokta üst üste ile ayrılmış başlangıç ve bitiş bağlantı noktası numaralarını temsil eder. İki nokta üst üste çevresinde boşluk kullanmayın.
  • Başlangıç bağlantı noktası numarası, bitiş bağlantı noktası numarasından küçük olmalıdır.
-l <filename.txt> Günlük dosyası oluşturma
  • <filename.txt> değeri, günlük dosyasının adını ve uzantısını temsil eder. Bu değer boşluk içeremez.
  • Komut çalıştırıldığında, PortQry günlük dosyasını yüklendiği dizinde oluşturur.
  • Dosya zaten varsa, PortQry üzerine yazmak istediğinizi onaylamanızı ister (parametresini -y de kullanmadığınız sürece).
-y Önceki günlük dosyasının üzerine yazma
  • ile -lbirlikte kullandığınızda-y, PortQry eylemi onaylamanızı istemeden mevcut günlük dosyasının üzerine yazar.
  • PortQry komut dizesi içermiyorsa -l, PortQry öğesini yoksayar -y.
-sl Yanıt için ek süre bekleyin (yavaş bağlantı gecikmesi olarak da bilinir) PortQry bağlantı noktasınıN DİnLENMİYOR veya FILTRELENMİYOR olduğunu belirlemeden önce PortQry'nin UDP bağlantı noktasından yanıt bekleme süresini iki katına çıkarması için bu parametreyi kullanın. Yavaş veya güvenilir olmayan ağ bağlantılarını sorguladığınızda, normal bekleme süresi yanıt almak için çok kısa olabilir.
-nr Ters ad arama atla
  • Varsayılan olarak, hedef bilgisayar için bir IP adresi belirtmek için kullandığınızda -n , PortQry IP adresini bir ada çözümlemek için ters ad araması yapar. Özellikle PortQry IP adresini çözümleyemiyorsa bu işlem zaman alabilir. Sorgunun bu adımını atlamak için kullanın -nr .
  • Bir bilgisayar veya etki alanı adı belirtmek için kullanırsanız -n , PortQry öğesini yoksayar -nr.
-sp <port_number> Belirli bir kaynak bağlantı noktasından sorgulama
  • <port_number> değeri, PortQry'nin sorguyu göndermek için kullandığı bağlantı noktasını temsil eder.
  • PortQry, başka bir işlemin zaten kullandığı bir bağlantı noktasını kullanamaz. Belirttiğiniz bağlantı noktası zaten kullanılıyorsa, PortQry aşağıdaki hata iletisini döndürür:
    Belirtilen kaynak bağlantı noktası kullanılamaz.
    Bağlantı noktası zaten kullanımda.
    Kullanımda olmayan bir bağlantı noktası belirtin ve komutu yeniden çalıştırın.
  • Aşağıdaki durumlarda, PortQry sorgunun ilk testi için belirtilen bağlantı noktasını kullanır, ancak ikinci test için kullanmaz:
    • RPC (TCP ve UDP bağlantı noktaları 135)
    • LDAP (UDP bağlantı noktası 389)
    • NetBIOS Bağdaştırıcısı durum sorgusu (UDP bağlantı noktası 137)
    Bu durumlarda, PortQry ikinci test için kısa ömürlü bir bağlantı noktası kullanır. Bu durum oluştuğunda, PortQry çıkışında "Kısa ömürlü kaynak bağlantı noktası kullanılıyor" ifadesini kaydeder.
  • PortQry'nin yüklü olduğu bilgisayar IPSec ilke aracısını da çalıştırıyorsa, UDP bağlantı noktası 500 kaynak bağlantı noktası olarak kullanılamayabilir. 500 numaralı bağlantı noktasını kullanabilmeniz için IPSec ilke aracısını geçici olarak kapatmak için komutunu çalıştırın net stop PolicyAgent. Sınamayı bitirdiğinizde komutunu çalıştırın net start PolicyAgent.
-cn !<community_name>! SNMP topluluğu sorgulama
  • <community_name> değeri, sorguya eklenecek SNMP topluluğunun adını temsil eder. Sol sütunda gösterildiği gibi ünlem işaretlerini kullanarak bu değeri sınırlandırmalısınız.
  • SNMP hizmeti hedef bağlantı noktasında dinlemiyorsa, PortQry öğesini yoksayar -cn.
  • Varsayılan topluluk adı şeklindedir public.
-q PortQry'i sessiz modda çalıştırma
  • kullandığınızda -q, PortQry hata iletileri dışında tüm ekran çıkışını gizler.
  • Hata iletileri dışındaki çıkışı görmek için ile -lbirlikte kullanın-q. PortQry, günlük dosyasına normal çıkışı kaydeder.
  • Bir günlük dosyası zaten varsa ve ile -lbirlikte kullanıyorsanız-q, PortQry sizden istemeden mevcut günlük dosyasının üzerine yazar.
  • , -rveya -p bothile -obirlikte kullanamazsınız-q.
  • Bu parametre özellikle bir PortQry komut dizesini çalıştırmak için bir toplu iş dosyası kullandığınızda yararlıdır.

Komut satırı modundaki parametreler için açıklamalar

  • Herhangi bir bağlantı noktası numarası değeri, 1 ile 65535 (dahil) arasında geçerli bir bağlantı noktası numarası olmalıdır.
  • -e, -ove -r parametreleri birbirini dışlar. Tek bir PortQry komutu bu parametrelerden yalnızca birini kullanabilir.
  • UDP bağlantı noktası 389 (LDAP) sorgusu, Windows Server 2008 çalıştıran etki alanı denetleyicilerinde çalışmayabilir. UDP bağlantı noktası 389'da çalışan hizmetin kullanılabilirliğini denetlemek için PortQry yerine Nltest kullanabilirsiniz. Daha fazla bilgi için bkz. Nltest.
  • veya -okullanarak -e 135 numaralı bağlantı noktasını (RPC) sorguladığınızda, PortQry şu anda RPC uç noktası eşleyicisine kayıtlı olan tüm uç noktaları döndürür.

    Önemli

    kullandığınızda -r, PortQry RPC uç noktası eşleyicisini sorgulamaz.

  • Bağlantı noktası 53'i (DNS) sorguladığınızda, PortQry hem TCP hem de UDP kullanarak için portqry.microsoft.com bir DNS sorgusu gönderir. Sunucu bir yanıt döndürürse, PortQry bağlantı noktasının LISTENING olduğunu belirler.

    Not

    DNS sunucusunun olumlu veya olumsuz bir yanıt döndürmesi önemli değildir. Herhangi bir yanıt bağlantı noktasının dinlediğini gösterir.

PortQry'yi yerel (komut satırı) modunda kullanma

Uzak hedef bilgisayardaki bir bağlantı noktasını sorgulamak yerine, PortQry'yi yerel modda kullanarak PortQry'nin çalıştığı yerel bilgisayardaki TCP bağlantı noktaları ve UDP bağlantı noktaları hakkında ayrıntılı bilgi edinebilirsiniz. PortQry'yi yerel modda çalıştırmak için aşağıdaki söz dizimini kullanın:

portqry -local | -wpid <pid> | -wport <port_number> [-wt <seconds>] [-l <filename.txt>] [-v]

Bu söz dizimindeki yer tutucular aşağıdaki yerel mod parametreleri tablosunda açıklanmıştır:

Parametre Açıklama Açıklamalar
-local Yerel bilgileri alma
  • Şu anda yerel bilgisayarda etkin olan tüm TCP ve UDP bağlantı noktası eşlemelerini numaralandırın. Bu çıkış, komutun oluşturduğu çıkışa netstat.exe -an benzer.
  • PID-bağlantı noktası eşlemelerini destekleyen bilgisayarlarda çıkış, yerel bilgisayarda bağlantı noktasını kullanan işlemin PID'sini içerir. Ayrıntılı seçeneğini ()-v kullanırsanız, çıkış PID'nin ait olduğu hizmetlerin adlarını da içerir ve işlemin yüklediği tüm modülleri listeler. Hangi bağlantı noktalarının bilgisayarda çalışan belirli bir program veya hizmetle ilişkili olduğunu belirlemek için bu bilgileri kullanabilirsiniz.
-wport <port_number> İzleme bağlantı noktası
  • Değişiklikler için belirli bir bağlantı noktasını izleyin. <port_number> değeri, izlenecek bağlantı noktasını temsil eder.
  • TCP bağlantı noktası söz konusu olduğunda, PortQry aşağıdaki durumlar arasındaki değişiklikleri bildirir:
    • CLOSE_WAIT
    • KAPALI
    • KURULAN
    • FIN_WAIT_1
    • LAST_ACK
    • DİNLE
    • SYN_RECEIVED
    • SYN_SEND
    • TIMED_WAIT
  • UDP bağlantı noktaları için, PortQry bir programın bağlantı noktasına bağlı olup olmadığını bildirir, ancak UDP bağlantı noktasının veri birimleri alıp almadığını bildirmez.
  • İzlemeyi durdurmak için Esc tuşuna basın.
-wpid <pid> İşlem kimliğini izleme (PID)
  • Bağlantıların sayısı ve durumundaki değişiklikler için belirli bir PID'yi izleyin. <process_number> değeri, izlenecek PID'yi temsil eder.
  • İzlemeyi durdurmak için Esc tuşuna basın.
-wt <seconds> Belirli bir aralıkta denetleme
  • /<seconds> değeriyle gösterilen aralıkta veya "-wpid tarafından -wport tanımlanan hedefin durumunu denetleyin.
  • Saniye>< değeri bir ile 1.200 (dahil) arasında olmalıdır.
  • Varsayılan değer şeklindedir 60.
  • kendi başına veya ile -localbirlikte kullanamazsınız-wt.
-l <filename.txt> Günlük dosyası oluşturma
  • <filename.txt> değeri, günlük dosyasının adını ve uzantısını temsil eder. Bu değer boşluk içeremez.
  • Komut çalıştırıldığında, PortQry günlük dosyasını yüklendiği dizinde oluşturur.
  • Dosya zaten varsa, PortQry üzerine yazmak istediğinizi onaylamanızı ister (parametresini -y de kullanmadığınız sürece).
-y Önceki günlük dosyasının üzerine yazma
  • ile -lbirlikte kullandığınızda-y, PortQry eylemi onaylamanızı istemeden mevcut günlük dosyasının üzerine yazar.
  • PortQry komut dizesi içermiyorsa -l, PortQry öğesini yoksayar -y.
-v Ayrıntılı çıkış oluşturma PortQry, ekran çıkışına (ve kullanılıyorsa günlük dosyasına) ek ayrıntılar sağlar.

Yerel modda parametreler için açıklamalar

  • -local, -wportve -wpid parametreleri birbirini dışlar. Bu parametrelerden yalnızca birini tek bir PortQry komut dizesinde kullanabilirsiniz.
  • -q Parametresi yerel modda çalışmıyor.
  • Bazı durumlarda, PortQry Sistem Boşta işleminin (PID 0) bazı TCP bağlantı noktalarını kullandığını bildirebilir. Yerel bir program tcp bağlantı noktasına bağlanır ve sonra durursa bu davranış oluşabilir. Program artık çalışmıyor olsa da, programın bağlantı noktasıyla TCP bağlantısı birkaç dakika boyunca "Zamanlanmış Bekleme" durumunda bırakılabilir. Böyle bir durumda, PortQry bağlantı noktasının kullanımda olduğunu algılayabilir, ancak PID yayınlandığından bağlantı noktasını kullanan programı belirleyemez. Varsayılan olarak, bağlantı noktası en uzun segment ömrü kadar iki kez "Zamanlanmış Bekleme" durumunda kalır.
  • Her işlem için, PortQry erişebildiği kadar çok bilgi raporlar. Bazı bilgilere erişim kısıtlanmıştır. Örneğin, Boşta ve CSRSS işlemleri için modül bilgilerine erişim, erişim kısıtlamaları kullanıcı düzeyi kodun bunları açmasını engellediğinden yasaktır. En iyi sonuçları elde için yerel yönetici bağlamında veya benzer kimlik bilgilerine sahip bir hesapta yerel mod komutunu çalıştırın.
  • ile -lbirlikte veya -wpid kullandığınızda-wport, CTRL+C yerine PortQry'yi kesmek ve çıkmak için Esc tuşunu kullanın. PortQry'nin günlük dosyasını doğru bir şekilde kapattıktan ve çıktıktan emin olmak için Esc tuşuna basmanız gerekir. PortQry'yi durdurmak için Esc yerine CTRL+C tuşlarına basarsanız günlük dosyası boş veya bozulabilir.

PortQry'i etkileşimli modda kullanma

Bilgisayarlar arasındaki bağlantı sorunlarını giderirken birçok yinelenen komut yazmanız gerekebilir. Bu tür eylemler PortQry'yi etkileşimli modda kullanarak daha kolay yapılabilir.

Etkileşimli mod, Nslookup DNS yardımcı programı veya Nblookup WINS yardımcı programındaki etkileşimli işlevlere benzer.

PortQry'yi etkileşimli modda başlatmak için parametresini -i kullanın. Örneğin, aşağıdaki komutu çalıştırın:

portqry -i

Bu komutun çıkışı aşağıdaki alıntıya benzer:

Portqry Interactive Mode

Type 'help' for a list of commands

Default Node: 127.0.0.1

Current option values:  
   end port= 80  
   protocol= TCP  
   source port= 0 (ephemeral)
>

Etkileşimli mod komutları

Etkileşimli modda aşağıdaki komutları kullanabilirsiniz:

Komut Açıklama Açıklamalar
node <name> Veya n <name> Hedefi sorgu olarak ayarlama
  • Ad>< değeri, sorguya alınacak bilgisayarın adını veya IP adresini temsil eder. Bu değer boşluk içeremez.
  • Varsayılan değerdir 127.0.0.1 (yerel bilgisayar).
query Veya q Sorgu gönderme
  • Geçerli ayarları kullanarak geçerli hedefi sorgular.
  • Varsayılan protokol: tcp.
  • Varsayılan hedef bağlantı noktası 80 numaralı TCP bağlantı noktasıdır.
  • Varsayılan kaynak bağlantı noktası 0 bağlantı noktasıdır (kısa ömürlü bağlantı noktası).
  • Çeşitli yaygın sorgulardan herhangi birini çalıştırmak için komutuyla query çeşitli kısayollardan birini kullanabilirsiniz. Kullanılabilir kısayolların listesi için bkz . Etkileşimli mod sorgu kısayolları.
set <option>=<value> Sorgu seçeneğinin değerini ayarlama
  • Bu komutta, <seçenek> ayar seçeneğinin adını, değer> ise < seçeneğin yeni değerini temsil eder.
  • Kullanılabilir seçeneklerin geçerli değerlerinin listesini görmek için girin set all.
  • Kullanılabilir seçeneklerin listesi için bkz . Etkileşimli mod seçenekleri.
exit Etkileşimli moddan çıkma

Etkileşimli mod sorgu kısayolları

Bağlantı noktası ve protokol seçeneklerini ayarlamak zorunda kalmadan yaygın sorguları çalıştırmak için komutuyla query birlikte aşağıdaki kısayolları kullanabilirsiniz. Aşağıdaki sözdizimini kullanın:

q <shortcut>

Not

Bu komutta, <kısayol> aşağıdaki tabloda yer alan kısayollardan birini temsil eder. Kısayolu atlarsanız, q komut 80 numaralı TCP bağlantı noktasını sorgular.

Kısayol Sorguya bağlanacak bağlantı noktaları
dns TCP bağlantı noktası 53, UDP bağlantı noktası 53.
ftp TCP bağlantı noktası 21
imap TCP bağlantı noktası 143
ipsec UDP bağlantı noktası 500
isa TCP bağlantı noktası 1745, UDP bağlantı noktası 1745
ldap TCP bağlantı noktası 389, UDP bağlantı noktası 389
l2tp UDP bağlantı noktası 1701
mail TCP bağlantı noktaları 25, 110 ve 143
pop3 TCP bağlantı noktası 110
rpc TCP bağlantı noktası 135, UDP bağlantı noktası 135
smtp TCP bağlantı noktası 25
snmp UDP bağlantı noktası 161
sql TCP bağlantı noktası 1433, UDP bağlantı noktası 1434
tftp UDP bağlantı noktası 69

Örneğin, etkileşimli modda girmek q dns normal komut satırı modunda çalışmaya portqry -n 127.0.0.1 -p both -e 135 eşdeğerdir.

Etkileşimli mod seçenekleri

Kaynak bağlantı noktası veya yavaş bağlantı gecikmesi gibi seçenekleri ayarlamak için komutunu kullanabilirsiniz set . Aşağıdaki sözdizimini kullanın:

set <option>=<value>

Not

Bu komutta seçenek>, < ayarlanacağı seçeneğin adını, değer> ise < seçeneğin yeni değerini temsil eder.

Seçeneği Açıklama Açıklamalar
set all Seçeneklerin geçerli değerlerini görüntüleme
set port=<port_number>
set e=<port_number>
Hedef bağlantı noktasını belirtme <port_number> değeri, hedef bilgisayarda sorgu için bağlantı noktasını temsil eder.
set sport=<port_number>
set sp=<port_number>
Kaynak bağlantı noktasını belirtin
  • <port_number> değeri, PortQry'nin sorguyu göndermek için kullandığı bağlantı noktasını temsil eder.
  • PortQry, başka bir işlemin zaten kullandığı bir bağlantı noktasını kullanamaz.
  • Sıfır bağlantı noktası numarası belirtirseniz, PortQry kısa ömürlü bir bağlantı noktası kullanır.
set protocol=<protocol>
set p=<protocol>
Kullanılacak protokolü belirtin Protokol>< değeri, sorguyatcp (, udpveya both) bağlanacak bağlantı noktasının türünü temsil eder.
set cn=<community_name> SNMP topluluğu belirtme
  • <community_name> değeri, sorguya eklenecek SNMP topluluğunun adını temsil eder.
  • SNMP hizmeti hedef bağlantı noktasında dinlemiyorsa, PortQry öğesini yoksayar -cn.
  • Varsayılan topluluk adı şeklindedir public.
set nr Ters ad aramasını kapatma veya açma
  • Varsayılan olarak, sorgu hedefi olarak bir IP adresi ayarladıysanız, PortQry IP adresini bir ada çözümler. Bu seçeneği değiştirirseniz, PortQry ad çözümleme adımını atlar.
  • Ters ad aramasını yeniden açmak için ikinci kez çalıştırın set nr .
set sl Yavaş bağlantı gecikmesi özelliğini açma veya kapatma
  • Bu seçeneği değiştirirseniz, PortQry bağlantı noktasınıN DİnLENMİYOR veya FİlTRELİ olduğunu saptamadan önce PortQry bir UDP bağlantı noktasından yanıt bekleme süresini iki katına çıkartır. Yavaş veya güvenilir olmayan ağ bağlantılarını sorguladığınızda, normal bekleme süresi yanıt almak için çok kısa olabilir.
  • Yavaş bağlantı gecikmesini yeniden kapatmak için ikinci kez çalıştırın set sl .

IP adresi 10.0.1.10 olan bir bilgisayarı sorgulamak istediğinizi varsayalım. Etkileşimli mod komut isteminde girin n 10.0.1.10. Bu komut aşağıdaki alıntıya benzer bir çıkış oluşturur:

Default Node: 10.0.1.10

>

DNS sorgusu göndermek için etkileşimli mod komut istemine girin q dns . Bu komut aşağıdaki alıntıya benzer bir çıkış oluşturur:

resolving service name using local services file...
UDP port resolved to the 'domain' service

IP address resolved to myserver.contoso.com

querying...

UDP port 53 (domain service): LISTENING

>

Bağlantı noktaları ve hizmetler arasındaki ilişkiyi özelleştirme

Varsayılan olarak, her Windows tabanlı bilgisayarda %SYSTEMROOT%\System32\Drivers\Etc klasöründe bulunan bir Hizmetler dosyası vardır. PortQry, bağlantı noktası numaralarını ilgili hizmet adlarına çözümlemek için bu dosyayı kullanır. PortQry, sorgularının biçimini seçmek için bu bilgileri kullanır. PortQry'yi biçimlendirilmiş iletileri alternatif bir bağlantı noktasına göndermeye yönlendirmek için bu dosyayı düzenleyebilirsiniz. Örneğin, tipik bir Hizmetler dosyasında aşağıdaki girdi görüntülenir:

ldap              389/tcp                           #Lightweight Directory Access Protocol

Bu bağlantı noktası girdisini düzenleyebilir veya ek bir giriş ekleyebilirsiniz. PortQry'yi 1025 numaralı bağlantı noktasına LDAP sorguları göndermeye zorlamak için girdiyi aşağıdaki gibi değiştirin:

ldap              1025/tcp                           #Lightweight Directory Access Protocol

Örnekler

Aşağıdaki örneklerde PortQry ve parametrelerinin nasıl kullanılacağı gösterilmektedir:

Yerel mod

Komut satırı modu

Yerel bilgisayarı sorgulama

çıkışı portqry -local aşağıdaki alıntıya benzer:

TCP/UDP Port Usage

96 active ports found

Port Local IPState Remote IP:Port  
TCP 80 0.0.0.0 LISTENING 0.0.0.0:18510  
TCP 80 169.254.149.9 TIME WAIT 169.254.74.55:3716  
TCP 80 169.254.149.9 TIME WAIT 169.254.200.222:3885  
TCP 135 0.0.0.0 LISTENING 0.0.0.0:10280  
UDP 135 0.0.0.0 :  
UDP 137 169.254.149.9 :  
UDP 138 169.254.149.9 :  
TCP 139 169.254.149.9 LISTENING 0.0.0.0:43065  
TCP 139 169.254.149.9 ESTABLISHED 169.254.4.253:4310  
TCP 139 169.254.149.9 ESTABLISHED 169.254.74.55:3714  

Erişim kısıtlanmış olabileceğinde yerel bilgisayarı sorgulama

Önceki örnekte olduğu gibi PortQry'yi yerel modda çalıştırdığınızda aşağıdaki alıntıya benzer bir çıkış görebilirsiniz. Bu tür çıkış, PortQry'nin kullandığı güvenlik bağlamının istediği tüm bilgilere erişmek için yeterli izinlere sahip olmadığını gösterir.

Port and Module Information by Process

Note: restrictions applied to some processes may
prevent Portqry from accessing more information

For best results run Portqry in the context of
the local administrator

======================================================  
Process ID: 0 (System Idle Process)

PIDPortLocal IPState Remote IP:Port  
0TCP 4442 169.254.113.96 TIME WAIT 169.254.5.136:80  
0TCP 4456 169.254.113.96 TIME WAIT 169.254.5.44:445  

Port Statistics

TCP mappings: 2  
UDP mappings: 0

TCP ports in a TIME WAIT state: 2 = 100.00%

Could not access module information for this process

======================================================

Belirli bir aralığı kullanarak işlem kimliğini izleme

Aşağıdaki komut belirli bir işlemi izler:

portqry.exe -wpid 1276 -wt 2 -v -l pid.txt

Sonuç olarak, PortQry aşağıdaki eylemleri gerçekleştirir:

  • 1276 PID içeren işlemi tanımlar ve Esc tuşuna basana kadar iki saniyede bir kullandığı bağlantı noktalarının durumunu denetler.
  • pid.txtgünlük dosyasını oluşturur. Bu ada sahip bir dosya zaten varsa, PortQry dosyanın üzerine yazmak istediğinizi onaylamanızı ister.
  • Ek ayrıntılı çıkış da dahil olmak üzere günlük dosyasındaki tüm çıktıları kaydeder.

Günlük dosyasının içeriği aşağıdaki alıntıya benzer:

PortQry Version 2.0 Log File
  
System Date: <DateTime>
  
Command run:  
portqry -wpid 1276 -wt 2 -v -l pid.txt
  
Local computer name:
  
host123
  
Watching PID: 1276
  
Checking for changes every 2 seconds
  
verbose output requested
  
Service Name: DNS  
Display Name: DNS Server  
Service Type: runs in its own process

============
System Date: <DateTime>

======================================================

Process ID: 1276 (dns.exe)

Service Name: DNS
Display Name: DNS Server
Service Type: runs in its own process

PIDPortLocal IPState Remote IP:Port
1276TCP 53 0.0.0.0 LISTENING 0.0.0.0:2160
1276TCP 1087 0.0.0.0 LISTENING 0.0.0.0:37074
1276UDP 1086 0.0.0.0 :
1276UDP 2126 0.0.0.0 :
1276UDP 53 127.0.0.1 :
1276UDP 1085 127.0.0.1 :
1276UDP 53 169.254.11.96 :

Port Statistics

TCP mappings: 2
UDP mappings: 5

TCP ports in a LISTENING state: 2 = 100.00%

Loaded modules:
C:\WINDOWS\System32\dns.exe (0x01000000)
C:\WINDOWS\system32\ntdll.dll (0x77F40000)
C:\WINDOWS\system32\kernel32.dll (0x77E40000)
C:\WINDOWS\system32\msvcrt.dll (0x77BA0000)
C:\WINDOWS\system32\ADVAPI32.dll (0x77DA0000)
C:\WINDOWS\system32\RPCRT4.dll (0x77C50000)
C:\WINDOWS\System32\WS2_32.dll (0x71C00000)
C:\WINDOWS\System32\WS2HELP.dll (0x71BF0000)
C:\WINDOWS\system32\USER32.dll (0x77D00000)
C:\WINDOWS\system32\GDI32.dll (0x77C00000)
C:\WINDOWS\System32\NETAPI32.dll (0x71C40000)

Hedef ve protokol belirtme

Not

Bu bölümdeki örneklerin her biri varsayılan bağlantı noktası olan 80 numaralı bağlantı noktasını sorgular.

Aşağıdaki komut, tam etki alanı adını (FQDN) kullanarak belirtilen bir bilgisayarda varsayılan TCP bağlantı noktasını sorgular:

portqry -n myDomainController.example.com -p tcp

Aşağıdaki komut, bilgisayar adını kullanarak belirtilen bir bilgisayarda varsayılan UDP bağlantı noktasını sorgular:

portqry -n myServer -p udp

Aşağıdaki komut, ip adresini kullanarak belirtilen bir bilgisayarın varsayılan TCP ve UDP bağlantı noktalarını sorgular:

portqry -n 192.168.1.20 -p both

Aşağıdaki komut, önceki komutla aynı sorguyu çalıştırır ancak ad çözümleme adımını atlar:

portqry -n 192.168.1.20 -p both -nr

Aşağıdaki komut bir web sunucusunun varsayılan TCP bağlantı noktasını sorgular:

portqry -n www.widgets.microsoft.com

Bir veya daha fazla hedef bağlantı noktası belirtme

Aşağıdaki komut, 25 numaralı TCP bağlantı noktasını sorgulayarak posta sunucusunun SMTP hizmetini test ediyor:

portqry -n mail.example.com -p tcp -e 25

Aşağıdaki komut, 192.168.1.20 IP adresine sahip bir bilgisayarın TCP bağlantı noktası 60897 ve UDP bağlantı noktası 60897'yi sorgular:

portqry -n 192.168.1.20 -p both -e 60897

Aşağıdaki komut , "myServer" bilgisayarındaki 139, 1025 ve 135 numaralı UDP bağlantı noktalarını (bu sırada) sorgular:

portqry -n myServer -p udp -o 139,1025,135

Aşağıdaki komut, "myServer" bilgisayarındaki 135 numaralı bağlantı noktası ile 139 (dahil) numaralı bağlantı noktası aralığını sorgular:

portqry -n myServer -p udp -r 135:139

PortQry çıkışı için günlük dosyası belirtme

Aşağıdaki komut, mail.widgets.microsoft.com üzerinde 143 numaralı TCP bağlantı noktasını sorgular ve çıkışı portqry.txt dosyasına kaydeder. Dosya zaten varsa, PortQry onay istemeden dosyanın üzerine yazar.

portqry -n mail.widgets.microsoft.com -p tcp -e 143 -l portqry.txt -y

Yavaş bağlantı üzerinden sorgulama

Aşağıdaki komut, mail.widgets.microsoft.com üzerinde 143, 110 ve 25 numaralı TCP bağlantı noktalarını sorgular. Her hedef bağlantı noktası için, PortQry yanıt için her zamankinin iki katı kadar bekler.

  portqry -n mail.widgets.microsoft.com -p tcp -o 143,110,25 -sl

Kaynak bağlantı noktası belirtme

Aşağıdaki komut, 192.168.1.20 üzerindeki UDP bağlantı noktası 53'e sorgu göndermek için yerel bilgisayarda UDP bağlantı noktası 3001'i (varsa) kullanır. Bir hizmet bu bağlantı noktasını dinliyorsa ve sorguyu yanıtlarsa, yanıtı yerel bilgisayardaki UDP bağlantı noktası 3001'e gönderir.

portqry -p udp -e 53 -sp 3001 -n 192.168.1.20

Aşağıdaki komut, yerel bilgisayardaki UDP bağlantı noktası 3000'i (varsa) kullanarak myDomainController.contoso.com'daki UDP bağlantı noktası 389'a sorgu gönderir. Varsayılan olarak, LDAP hizmeti bu bağlantı noktasında dinliyor olmalıdır. LDAP hizmeti ilk sorguya yanıt verirse, PortQry biçimlendirilmiş sorguyu göndermek ve tüm yanıtları almak için kısa ömürlü bir kaynak bağlantı noktası kullanır.

portqry -n myDomainController.contoso.com -e 389 -sp 3000

PortQry'yi sessiz modda çalıştırmak için toplu iş dosyası kullanma

Aşağıdaki metin, PortQry'yi sessiz modda çalıştıran bir toplu iş dosyası örneğidir:

:Top
portqry -n 169.254.18.22 -e 443 -nr -l pqlog.txt -q
:end

Bu toplu iş dosyası çalıştırıldığında, PortQry pqlog.txtadlı bir günlük dosyası üretir. Bu dosyanın içeriği aşağıdakine benzer:

PortQry Version 2.0 Log File

System Date: Thu Sep 16 10:35:03 2021

Command run:
 portqry -n 169.254.18.22 -e 443 -nr -l pqlog.txt -q

Local computer name:

 SOURCESERVER

Querying target system called:

 169.254.18.22

TCP port 443 (https service): LISTENING


========= end of log file ========= 

Sorgu bağlantı noktası 135 (RPC hizmeti)

Aşağıdaki komut, myServer bilgisayarında UDP bağlantı noktası 135'i sorgular. Varsayılan olarak, RPC hizmeti bu bağlantı noktasında dinliyor olmalıdır.

portqry -n myServer -p udp -e 135

Sonuç olarak, PortQry aşağıdaki eylemleri gerçekleştirir:

  • PortQry, 135 numaralı UDP bağlantı noktasını bir hizmete çözümlemek için %SYSTEMROOT%\System32\Drivers\Etc klasöründeki Hizmetler dosyasını kullanır. PortQry, varsayılan yapılandırmayı kullanarak BAĞLANTı noktasını RPC uç noktası eşleyici hizmetine (Epmap) çözümler.
  • PortQry, hedef bilgisayardaki UDP bağlantı noktası 135'e biçimlendirilmemiş bir kullanıcı veri birimi gönderir.
    PortQry hedef bağlantı noktasından yanıt almaz. Bunun nedeni, RPC uç noktası eşleştirici hizmetinin yalnızca doğru biçimlendirilmiş bir RPC sorgusuna yanıt vermesidir. PortQry, bağlantı noktasının DİnLENDİ veya FILTRELENDİ olduğunu bildirir.
  • PortQry, şu anda RPC uç noktası eşleyicisine kayıtlı olan tüm uç noktaları isteyen doğru biçimlendirilmiş bir RPC sorgusu oluşturur. PortQry bu sorguyu hedef bilgisayardaki UDP bağlantı noktası 135'e gönderir.
  • Yanıta bağlı olarak, PortQry aşağıdaki eylemlerden birini gerçekleştirir:
    • PortQry bu sorguya bir yanıt alırsa, PortQry kullanıcıya yanıtın tamamını döndürür ve bağlantı noktasının LISTENING olduğunu bildirir.
    • PortQry bu sorguya yanıt almazsa, bağlantı noktasının FILTERED olduğunu bildirir.
UDP port 135 (epmap service): LISTENING or FILTERED  
Querying Endpoint Mapper Database...  
Server's response:  

UUID: 50abc2a4-574d-40b3-9d66-ee4fd5fba076
ncacn_ip_tcp:169.254.12.191[4144]

UUID: ecec0d70-a603-11d0-96b1-00a0c91ece30 NTDS Backup Interface
ncacn_np:\\MYSERVER[\PIPE\lsass]

UUID: e3514235-4b06-11d1-ab04-00c04fc2dcd2 MS NT Directory DRS Interface
ncacn_ip_tcp:169.254.12.191[1030]

UUID: e3514235-4b06-11d1-ab04-00c04fc2dcd2 MS NT Directory DRS Interface
ncadg_ip_udp:169.254.12.191[1032]

UUID: 12345678-1234-abcd-ef00-01234567cffb
ncacn_np:\\MYSERVER[\PIPE\lsass]

UUID: 12345678-1234-abcd-ef00-01234567cffb
ncacn_np:\\MYSERVER[\PIPE\POLICYAGENT]

Total endpoints found: 6

==== End of RPC Endpoint Mapper query response ====

UDP port 135 is LISTENING

Bu çıktıdan, hizmetin yalnızca bağlantı noktasında dinleyip dinlemediğini değil, aynı zamanda hedef bilgisayardaki RPC uç noktası eşleyici veritabanına hangi hizmet veya programların kaydedildiğini de belirleyebilirsiniz. Çıkış, her program için evrensel benzersiz tanımlayıcıyı (UUID), açıklamalı adı (varsa), her programın kullandığı protokolü, programın bağlı olduğu ağ adresini ve programın uç noktasını köşeli ayraç içinde içerir.

Not

PortQry komutunda bir bağlantı noktası aralığını tarama seçeneğini belirttiğinizde -r , PortQry uç nokta bilgileri için RPC uç nokta eşleyicisini sorgulamaz. Bu parametre, bir bağlantı noktası aralığını taramayı hızlandırır.