On Mon, Oct 30, 2006 at 02:33:01PM +0700, Achmad Syaefulloh wrote: > 0.0.0.0/8 Equal sareng 127.0.0.1 alias localhost kalo gak salah yah
Tidak sama. 0.0.0.0/8 adalah *RANGE* of addresses yg octet pertamanya adalah 0, yaitu 0.*.*.*, di mana 0.0.0.0 juga termasuk dalam range itu. /8 itu adalah menandakan range dalam CIDR notation, range ini sering disebut juga network mask (netmask), dlm hal ini 8 bits pertama dari 32-bit IPv4 address. 0.0.0.0 adalah salah satu IP address yang valid, tapi punya arti dan perlakuan khusus, dan umumnya tidak diassign ke suatu interface. 0.0.0.0 ini sama dengan 0, IP address yg pertama, 32-bit integer yg semua bitnya 0. 0.0.0.0 atau 0 ini sama dengan INADDR_ANY, artinya IP address mana saja yg di-assign ke komputer yang bersangkutan. Misalnya kalo punya Postfix mail server yg disuruh listen di semua interface yg dimiliki ($inet_interfaces = all), atau Apache yg diset Listen *:80, maka itu sebetulnya memanggil bind() dengan address INADDR_ANY atau 0.0.0.0 ini. Jadi kalo ada IP packet yg ditujukan ke IP address mana saja yg diassign ke server tsb maka paket tsb diterima, termasuk ke 0.0.0.0 juga. Jadi kalo org ngetes TCP connection pake telnet dengan alamat 0.0.0.0 itu biasanya biar cepet aja, dia ga perlu ngecek2 dulu mesti konek ke IP yg sama dengan yg diset utk listening. Walaupun Postfix $inet_interfaces nya diset ke 127.0.0.1 saja atau ke 192.168.1.20 saja atau ke kedua address itu aja, org tetep bisa 'telnet 0.0.0.0 25' dr mesin yg sama, apapun address bind()-nya. Salah satu referensinya soal INADDR_ANY ada di 'man 7 ip'. Referensi soal bind() ada di section 2: 'man 2 bind' (not to be confused with BIND, the DNS server). Ronny
signature.asc
Description: Digital signature