The right way for forcing IPv6 is 'bindto' => '[::]:0'Soket bağlamı seçenekleri — Soket bağlamı seçeneklerinin listesi
    Soket bağlamı seçenekleri, tcp,
    http ve ftp gibi soketler üzerinde
    çalışan tüm sarmalayıcılar için kullanılabilir.
  
| Sürüm: | Açıklama | 
|---|---|
| 7.1.0 | tcp_nodelayeklendi. | 
| 7.0.1 | ipv6_v6onlyeklendi. | 
Örnek 1 - Temel bindto kullanım örneği
<?php
// internete '192.168.0.100' IP'yi kullanarak bağlanalım
$seçenekler = array(
    'socket' => array(
        'bindto' => '192.168.0.100:0',
    ),
);
// internete '192.168.0.100' IP ve port '7000' üzerinden bağlanalım
$seçenekler = array(
    'socket' => array(
        'bindto' => '192.168.0.100:7000',
    ),
);
// internete '2001:db8::1' IPv6 adresini kullanarak bağlanalım
// and port '7000'
$opts = array(
    'socket' => array(
        'bindto' => '[2001:db8::1]:7000',
    ),
);
// internete port '7000' üzerinden bağlanalım
$seçenekler = array(
    'socket' => array(
        'bindto' => '0:7000',
    ),
);
// bağlamı oluşturalım...
$bağlam = stream_context_create($seçenekler);
// ...ve veri çekmek için kullanalım
echo file_get_contents('http://misal.dom', false, $bağlam);
?>You can set "bindto" to "0:0" to force use IPv4 instead of IPv6. And probably "[0]:0" to force use IPv6, thou this I couldn't test.