Programming VB.NET : melihat Dynamic IP Address dan merekam dalam log

BERAPA IP ADDRESS NYA ? Biasanya proses ini dibutuhkan saat ingin me-“remote admin” atau menggunakan resource yang ada di PC atau Device yang terhubung dengan Dynamic IP Address. Karena koneksi internet “rumahan” atau “modal modem” hanya mendapat Dynamic IP Address, maka perlu dicari cara menemukan IP Address secara otomatis. Ada beberapa situs yang memberikan fasilitas untuk mendapatkan informasi Dynamic IP Address kita, contohnya SPEEDTEST.NET

Tapi untuk mendapatkan IP Address tersebut menggunakan aplikasi VB.NET dan menggunakannya sebagai sarana logging, kita dapat memanfaatkan web server kita sebagai alat bantu, yaitu dengan membuat script dalam PHP seperti di bawah ini : Untuk lebih jelasnya silahkkan download di link ini Bila butuh jawaban segera, bisa kirim email ke purwoko.edi*gmail.com, ganti * dengan @

Programming VB.NET : Mendapatkan Serial Number, Volume dan Size pada Hard Disk/Flash Disk/CD ROM/DVD ROM

Untuk mengetahui Serial Number, Volume dan Size pada Hard Disk/Flash Disk/CD ROM/DVD ROM menggunakan VB.NET caranya sbb :

Imports System.Reflection
Imports System.IO

Public Class Form1
Private Declare Function GetVolumeInformation Lib "kernel32" Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Integer, ByRef lpVolumeSerialNumber As Integer, ByRef lpMaximumComponentLength As Integer, ByRef lpFileSystemFlags As Integer, ByVal lpFileSystemNameBuffer As String, ByVal nFileSystemNameSize As Integer) As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Timer1.Start()
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
LstDrive.Items.Clear()
LstVolLabel.Items.Clear()
LstSize.Items.Clear()
LstDriveType.Items.Clear()
LstPartitionType.Items.Clear()
LstVolumeID.Items.Clear()

Dim allDrives() As IO.DriveInfo = IO.DriveInfo.GetDrives()

Dim drive As IO.DriveInfo
LblDriveNumber.Text = allDrives.Count & " Drive(s) detected"
For Each drive In allDrives

LstDrive.Items.Add(drive.RootDirectory) '.ToString()

Try
LstVolLabel.Items.Add(drive.VolumeLabel) '.ToString()
LstSize.Items.Add(Format(drive.AvailableFreeSpace / (1024 * 1024), "###,##0 GB") _
& " of " & Format(drive.TotalSize / (1024 * 1024), "###,##0 GB") _
& " (" & Format(drive.AvailableFreeSpace / drive.TotalSize, "###,##0% used)"))

If drive.DriveType = IO.DriveType.Removable Then
LstDriveType.Items.Add("USB")
ElseIf drive.DriveType = IO.DriveType.Network Then
LstDriveType.Items.Add("Network")
ElseIf drive.DriveType = IO.DriveType.Fixed Then
LstDriveType.Items.Add("HD")
ElseIf drive.DriveType = IO.DriveType.CDRom Then
LstDriveType.Items.Add("CD-ROM")
ElseIf drive.DriveType = IO.DriveType.Unknown Then
LstDriveType.Items.Add("???")
End If
LstPartitionType.Items.Add(drive.DriveFormat)
check_ID(drive.RootDirectory)

Catch ex As Exception
LstVolLabel.Items.Add("")
LstSize.Items.Add("")
LstDriveType.Items.Add("")
LstPartitionType.Items.Add("")
LstVolumeID.Items.Add("")
End Try

Next

End Sub
Private Sub check_ID(ByVal cur_drive)

Dim root As String
Dim volume_name As String
Dim serial_number As Integer
Dim max_component_length As Integer
Dim file_system_flags As Integer
Dim file_system_name As String
Dim pos As Integer
Dim Vol_ID As String
root = cur_drive.ToString
'ListBox6.Items.Add(root)
volume_name = Space(1024)
file_system_name = Space(1024)

If GetVolumeInformation(root, volume_name, Len(volume_name), serial_number, max_component_length, file_system_flags, file_system_name, Len(file_system_name)) = 0 Then
MessageBox.Show("Tidak ada drive atau formatnya salah ( harus pakai tanda : )", "Error Getting Information", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
Exit Sub
End If

pos = volume_name.IndexOf(Chr(0))
volume_name = volume_name.Substring(0, pos)
Vol_ID = Hex(serial_number.ToString)
Vol_ID = Microsoft.VisualBasic.Left(Vol_ID, 4) & "-" & Microsoft.VisualBasic.Right(Vol_ID, 4)
LstVolumeID.Items.Add(Vol_ID)

pos = file_system_name.IndexOf(Chr(0))
file_system_name = file_system_name.Substring(0, pos)
End Sub
End Class
 

Selamat mencoba 🙂

Antenna J-Pole untuk Televisi

Setelah menerima beberapa pertanyaan seputar antenna TV tipe J-Pole dan Bazooka, yang kebanyakan merasa sulit membuatnya, saya coba buatkan petunjuk membuat antenna TV yang “semoga” lebih mudah dilakukan.

Persiapkan alat-alat seperti yang ada di gambar 1. Ada yang lupa 🙂 soldernya belum difoto

Saya menggunakan kawat las kuningan sebagai batang antenna. 
Atau boleh pakai kawat tembaga atau kawat pengikat yang berukuran 2 mm.

Panjang yang dibutuhkan adalah sekitar 48 cm

Buat tanda menggunakan spidol pada ukuran 35 cm dari ujung kawat pertama (anggap saja sebelah kiri)

Buat tanda menggunakan spidol pada ukuran 12 cm dari ujung kawat lainnya (anggap saja sebelah kanan)

Maka di bagian tengah akan ada tanda seperti di bawah ini (jarak antara tanda sekitar 1 cm)

Jepit area tersebut menggunakan tang
Lalu tekuk kawatnya menjadi seperti ini
Lakukan penekukan pada kedua sisi sehingga menjadi seperti ini
Siapkan kabel antenna (coax) kupas bagian luarnya sehingga menjadi seperti ini
Hubungkan kabel tersebut ke kawat antenna
Lilit, lalu solder kabel ke kawat
Lindungi sambungan2 tersebut dengan isolasi, lalu pasang dimana anda suka.
Kareana posisi rumah saya termasuk “enak”, maka antenna tersebut saya letakkan di atas lemari kamar saja.
Harga batang las kuningan hari ini 20-02-2014 sekitar Rp.12ribu s/d Rp.15 ribu, bisa dibeli di toko besi.
Kemampuan antenna ini lebih baik dari antenna Bazooka karena ada faktor panjang antenna yang 5/8 lambda, sehingga penerimaannya lebih baik dari antenna 1/2 lambda.
selamat mencoba 🙂

Antenna Bazooka untuk TV UHF

Kebetulan ada sisa alumunium ukuran 3/8″ yang sayang untuk dibuang, iseng2 diukur ternyata panjangnya sekitar 17cm.
Supaya bermanfaat, dicari artikel yang berkenaan dengan antenna, dan ternyata ada antenna double-bazooka yang menjanjikan lebar band yang memadai bila dioperasikan untuk TV UHV.
Mulailah dicari material pelengkap lainnya, seperti batang bagian tengah antenna, dan pilihan jatuh kepada jari2 sepeda.
Selain dari itu dicari juga bahan isolator agar tabung alumunium tidak bersentuhan dengan jari2 sepeda, pilihan jatuh kepada karet bekas sandal jepit yang sudah tidak terpakai.
Maka mulailah proses merakit antenna double-bazooka untuk TV UHV seperti yang ada pada gambar di atas.
Penjelasan :
tanda biru menunjukkan koneksi antara jari2 sepeda dengan tabung alumunium
tanda kuning menunjukkan isolator antara jari2 sepeda dengan tabung alumunium

ATAU…

Gunakan kabel RG-8 sebagai pengganti material alumunium dan jari2 sepeda.


ps:
terimakasih untuk sdr Antonius Simamora yang telah memberikan ide untuk menulis artikel ini.
semoga percobaannya sukses.
“…tetapi justru dari perbedaan pendapatlah akan timbul peluang untuk memajukan garis depan daerah ketahuan jauh ke dalam daerah ketidaktahuan.”
 
Prof. Dr. Ir. Andi Hakim Nasution – 1982.

Konfigurasi 2 Virtual Switch pada VMware ESXi 5.0.0

PC/Server dengan NIC lebih dari 1.

Pada umumnya PC atau Server jaman sekarang sudah dilengkapi dengan NIC lebih dari satu buah. Hal tersebut sangat berguna apabila PC atau server akan dimanfaatkan/difungsikan sebagai server yang menangani 2 jaringan terpisah (Proxy, Router, Bridge, dll).

Dalam percobaan saya ini, saya menggunakan sebuah server dari IBM 3250 Series yang mempunyai 2 NIC On Board yang akan di-install VMware VSphere ESXi 5.0.0.

VMware: 2 NIC untuk Load Balance

Pada saat instalasi VMware, saya langsung mengaktifkan kedua NIC dengan harapan masing-masing NIC akan saya hubungkan ke network yang berbeda (seperti yang biasanya saya lakukan apabila melakukan instalasi OS).

Ternyata yang terjadi adalah kedua NIC tersebut hanya bisa mengenali satu network saja, dan NIC kedua hanya bisa difungsikan sebagai Network Load Balance.

VMware: pemisahan jaringan

Untuk itu perlu dilakukan trik agar kedua NIC tersebut dapat difungsikan untuk network yang berbeda.
Pada saat instalasi VMware, lakukan instalasi hanya pada NIC pertama saja (vmnic0) sehingga yang dikenal hanya 1 NIC, dan akan terbentuk vSwitch0 saja yang akan menangani VM Port Group dan VM Kernel Port

VMware: aktifkan NIC kedua
Setelah proses instalasi VMware berjalan sukses, lakukan penambahan  perangkat jaringan dengan meng-klik Add Networking 


maka akan muncul menu sebagai berikut:


VMware: Add Network Wizard

Install VMkernel (Virtual Kernel)
Pilih Virtual Kernel, lalu klik Next



Pilih klik Next, lalu masukkan Network Label, lalu klik Next

Masukkan IP Address, Subnet Mask, dan Default Gateway, lalu klik Next

maka vSwitch sudah siap digunakan.




Install Virtual Machine (Virtual Machine)
Pilih Virtual Kernel, lalu klik Next


klik Next, lalu masukkan Network Label, lalu klik Next, dan proses pembuatan Virtual Machine selesai.

Hasil Akhir dari proses di atas adalah seperti di bawah ini :


akan tampak 2 vSwitch dengan masing-masih switch mengarah ke jaringan yang berbeda.

setelah itu barulah dilakukan instalasi Virtual Machine yang bisa berupa OS Windows, Linux, dll.


Belajar Ubuntu

Seiring dengan berkembang dan bervariasinya teknologi Informasi, saya coba untuk menggunakan salah satu varian Linux yang “mendekati” tampilan Windows, yaitu Ubuntu Desktop. Tujuannya selain mendapat gambaran lengkap tentang Linux, juga mau ambil keuntungan dari “GRATIS”an nya 🙂

Ubuntu Desktop
Alasan memilih Ubuntu adalah kebanyakan dari fungsi yang ada di Windows ada juga di Ubuntu, termasuk Office Automation-nya, yaitu LibreOffice (sebelumnya OpenOffice).
Untuk menyesuaikan diri ke Ubuntu, tidak terlalu banyak kerepotan yang dihadapi, apalagi untuk versi-versi terakhir, bahkan sampai ke setting jaringan dan lain-lain.

Bagi yang belum berani meng-install Ubuntu secara penuh di PC/Laptop nya, dapat menggunakan VirtualBox, atau melakukan instalasi parallel dengan Windows yang sudah ada.
Pilihan pertama (menggunakan VirtualBox) lebih mudah karena bila ada masalah pada instalasi Ubuntu maka kita tinggal hapus saja, lalu install ulang lagi, sampai bosen, sampai mabok, sampai pinter :).

Sebelum mahir, saya makin tertantang untuk mencoba lebih dari sekedar desktop, maka langkah berikut adalah mencoba Ubuntu Server.

Ubuntu Server
Ubuntu Desktop tidak terlalu sulit dipelajari karena GUI nya mantab.com, dari fresh installation bisa langsung ngacir….
Nah waktu mau belajar Ubuntu Server, mulai deh muncul penyakit males karena ternyata harus pakai ngetik command di promt nya. Hadeh…. 🙁 terpaksa istirahat dulu karena serem banget yak, harus kembali ke era tingkat 1 kuliah, Ngetik command??? hari gini ??? ck ck ck
Tapi karena gaya nekad, saya install juga deh Ubuntu Server.
Sukses instalasi, mulai bingung, buat apa nih si server? Yang paling gampang install web server, trus install Joomla, dan seterusnya.
Mulai deh pikiran menghayal kemana-mana, bikin apa lagi nih ?
Akhirnya mau coba bikin mail server. Haduh…. ampun, banyak banget perintahnya 🙁 Namun – kembali lagi – dengan gaya pede abisss, mulailah mengetik baris perintah pertama, yaitu perintah download …. dan … voila !!!! I already have my own mail server with my own domain purwoko-edi.com !!!!

“Kemudahan” (aslinya sih “kepusingan”) yang saya hadapi ternyata malah menjadikan saya lebih yakin kalau Linux itu mudah dipelajari, buktinya saya yang level skill nya pas KKM bisa juga mengendalikan Linux Ubuntu.
Apalagi di versi-versi terakhir, Ubuntu Desktop dan Ubuntu Server dibangun dari source (kernel) yang sama 🙂 (itu kata ubuntu.com lho, bukan kata saya).

VirtualMachine
Kalau sudah mulai pusing dengan instalasi yang macam-macam, mari kita coba buat beberapa Server Ubuntu dalam satu fisik dengan menggunakan VMWare. Tujuan dari penggunaan VMWare adalah agar setiap setting dapat dicoba dengan berbagai konfigurasi yang berbeda, juga bisa sebagai simulasi seandainya kita mempunyai banyak Server.

Saya kembali teringat kepada apa yang disampaikan oleh OM Onno W. Purbo bahwa “Windows adalah Windows, Linux adalah Linux, mereka bukan alternatif dari salah satunya”.