Image     Buku Tamu   Humor    Buku Tamu   Site Map

7 Des 2011

Memantau bandwidth dengan netstat

dikutip dari sumber apa adanya dari blog stupidnet.wordpress.com

Perintah netstat digunakan untuk mengetahui koneksi apa saja yang keluar masuk dalam sebuah jaringan. Netstat mengambil informasi networking ini dengan cara membaca tabel routing dari kernel yang terdapat dalam memori.


Dalam RFC pada Internet Tool Catalog, defenisi netstat adalah sebuah aplikasi yang memiliki kemampuan untuk mengakses jaringan yang berkaitan dengan struktur data dalam kernel, serta menampilkannya dalam bentuk format ASCII di terminal. Netstat dapat memberikan laporan dari tabel routing, koneksi “listen” dari TCP, UDP, dan protokol manajemen memori.

Keberadaan netstat ini bisa bisa “>pula dimanfaatkan untuk mengetahui server yang sedang terkoneksi melalui port tertentu saat port tersebut dalam kondisi terbuka. Misalnya anda ingin mengkases port 23 (telnet), tentu saja port tersebut haruslah terbuka dahulu supaya bisa diakses. Untuk melakukan hal ini, keberadaan netstat ini sangat membantu sekali.


Sedang dari microsoft sendiri memberikan penjelasan seperti berikut kutipannya 
Netstat digunakan untuk menampilkan koneksi TCP yang aktif, port pada komputer yang mendengarkan, statistik Ethernet, tabel routing IP, statistik IPv4 (untuk IP, ICMP, TCP, dan UDP protokol), dan statistik IPv6 (untuk IPv6,, ICMPv6 TCP ke IPv6 , dan UDP melalui protokol IPv6).Digunakan tanpa parameter, netstat menampilkan koneksi TCP yang aktif.
Sintaksis
netstat [-a] [-e] [-n] [-o] [-p Protokol] [-r] [-s] [Interval]
Parameter
-A : Menampilkan semua koneksi TCP yang aktif dan port TCP dan UDP pada komputer yang mendengarkan.
-E : Menampilkan statistik Ethernet, seperti jumlah byte dan paket yang dikirim dan diterima. Parameter ini dapat dikombinasikan dengan-s.
-N : Menampilkan koneksi TCP yang aktif, bagaimanapun, alamat dan nomor port disajikan secara numerik dan tidak ada usaha dibuat untuk menentukan nama.
-O : Menampilkan koneksi TCP yang aktif dan mencakup proses ID (PID) untuk setiap koneksi. Anda dapat menemukan aplikasi berdasarkan PID pada tab Proses pada Windows Task Manager. Parameter ini dapat dikombinasikan dengan-a,-n, dan-p.
-P Protokol : Menampilkan koneksi untuk protocol yang ditentukan oleh Protokol. Dalam hal ini, Protokol dapat tcp, udp, tcpv6, atau udpv6. Jika parameter ini digunakan dengan-s untuk menampilkan statistik oleh protokol, Protokol dapat tcp, udp, icmp, ip, tcpv6, udpv6, ICMPv6, atau ipv6.
-S : Menampilkan statistik oleh protokol. Secara default, statistik ditampilkan untuk TCP, UDP, ICMP, dan protokol IP. Jika protokol IPv6 untuk Windows XP diinstal, statistik ditampilkan untuk TCP ke IPv6, UDP di IPv6, dan protokol IPv6 ICMPv6. -Pparameter dapat digunakan untuk menentukan satu set protokol.
-R : Menampilkan isi dari tabel routing IP. Hal ini setara dengan perintah cetak rute.
Selang : Menampilkan kembali informasi yang dipilih setiap detik Interval. Tekan CTRL + C untuk menghentikan menampilkan kembali. Jika parameter ini diabaikan, netstat akan mencetak informasi yang dipilih hanya sekali.
/? : Menampilkan bantuan pada command prompt.

Keterangan
Parameter yang digunakan dengan perintah ini harus diawali dengan tanda hubung (-) daripada sebuah garis miring (/).
Netstat menyediakan statistik untuk:
Proto
Nama protokol (TCP atau UDP).
Alamat lokal
Alamat IP dari komputer lokal dan nomor port yang digunakan. Nama dari komputer lokal yang sesuai dengan alamat IP dan nama pelabuhan ditampilkan kecuali parameter-n ditentukan. Jika port tersebut belum terbentuk, nomor port akan ditampilkan sebagai tanda bintang (*).
Foreign Addres
Alamat IP dan nomor port dari komputer remote yang terhubung soket. Nama-nama yang sesuai dengan alamat IP dan port akan ditampilkan kecuali parameter-n ditentukan. Jika port tersebut belum terbentuk, nomor port akan ditampilkan sebagai tanda bintang (*).
(State)
Menunjukkan status koneksi TCP. Negara yang mungkin adalah sebagai berikut:
CLOSE_WAIT
CLOSED
ESTABLISHED
FIN_WAIT_1
FIN_WAIT_2
LAST_ACK
LISTEN
SYN_RECEIVED
SYN_SEND
TIMED_WAIT 
Untuk informasi lebih lanjut tentang negara dari sebuah koneksi TCP, lihat RFC 793.
Perintah ini tersedia hanya jika Internet Protocol (TCP / IP) protokol dipasang sebagai komponen dalam properti dari adapter jaringan pada Network Connections
Contoh
Untuk menampilkan statistik kedua Ethernet dan statistik untuk semua protokol, ketik perintah berikut: netstat-e-s
Untuk menampilkan statistik hanya protokol TCP dan UDP, ketik perintah berikut:
netstat-s-p tcp udp
Untuk menampilkan koneksi TCP yang aktif dan proses ID setiap 5 detik, ketik perintah berikut:
nbtstat-o ​​5
Untuk menampilkan koneksi TCP yang aktif dan proses ID numerik menggunakan formulir, ketik perintah berikut:
nbtstat-n-o 
Referensi lain ada di sini
Maka kalau dilakukan perintah dengan command netstat < enter > akan menghasilkan angka :




netstat -e < enter > akan menghasilkan suatu tampilan :







Maka untuk mendeteksi adanya trafik keluar masuknya banyaknya byte perdetik dapat dilakukan dengan menggunakan timer
dan pemasangan timer dengan perintah seperti ini


  1. Public Sub AmbilNetStat()
  2. Dim TempLoad,Load As String
  3. Dim Load As String
  4. ‘------------------ bagian netstat
  5. Shell "cmd.exe /C netstat -e> " & Chr(34) & App.Path & "\temp.tmp" & Chr(34), vbHide
  6. Open App.Path & "\temp.tmp" For Input As #1
  7.     Do Until EOF(1)
  8.         Input #1, TempLoad
  9.         Load = Load & TempLoad
  10.     Loop
  11. Close #1
  12. ‘------------------- pengambilan byte
  13. sString = Split(Load, "Bytes")
  14. On Error GoTo errornya
  15. ‘ ----------------- ambil posisi download dan upload
  16. DnLoad = Int(Mid(sString(1), 14, 17))
  17. UpLoad = Int(Mid(sString(1), 31, 16))
  18. ‘ --- 
  19. If swa = 1 Then
  20.     If Abs(Val(Element(Time, 2, ":")) - Val(Element(cTime, 2, ":"))) <= 59 Then
  21.     Else
  22.     cTime = Time
  23.             strsql = "insert into trafik (adapter,jam,tanggal,download,upload) " & _
  24.                                " values ('" & mAdapter & "','" & Element(Time, 1, ":") & "',cdate('" & (Date) & "'), " & DLoad & ", " & ULoad & ")"
  25.               CN.Execute strsql
  26.     End If
  27.     swa = 1
  28. Else
  29.     If swa = 0 Then
  30.             strsql = "insert into trafik (adapter,jam,tanggal,download,upload) " & _
  31.                                " values ('" & mAdapter & "','" & Element(Time, 1, ":") & "',cdate('" & (Date) & "'), " & DnLoad & ", " & UpLoad & ")"
  32.               CN.Execute strsql
  33.         swa = 1
  34.         cTime = Time
  35.         End If
  36.     End If
  37. Exit Sub
  38. PassRead:
  39. errornya:
  40.  
  41. If Err.Number = 9 Then MsgBox "Koneksi kemungkinan terputus", vbInformation + vbOKOnly, "Cek pada koneksi"
  42. Val(Element(cTime, 2, ":")) 'Time - ctime
  43. If swa = 1 Then
  44.     If Abs(Val(Element(Time, 2, ":")) - Val(Element(cTime, 2, ":"))) <= 3 Then
  45.     Else
  46.     cTime = Time
  47.     frmPDU.SendMsg SNoDefaut, "Koneksi kemungkinan terputus " & Time
  48.     End If
  49.     swa = 1
  50. Else
  51.     If swa = 0 Then
  52.         frmPDU.SendMsg SNoDefaut, "Koneksi kemungkinan terputus " & Time
  53.         swa = 1
  54.         cTime = Time
  55.         End If
  56.     End If
  57. End Sub
Perintah tersebut akan memantau bandwidth yang keluar / masuk atau dalam posisi download dan upload
berhubung ini sudah hampir magrib maka untuk penulisannya ini di putus sampai disini dahulu ..
ntar dilanjut dengan berbagai perubahan



Tidak ada komentar:

Posting Komentar

Tinggalkan Komentar :