擷取本機外網ip地址的老問題

來源:互聯網
上載者:User
遇到了跟之前的一篇文章一樣的問題
各種方法擷取本地外網ip時,各種返回::1。
大部分是說因為ipv6的原因。但關掉後,電腦徹底無法上網了。
不知道現在有沒有除了介面以外的解決辦法。


回複討論(解決方案)

ipv6 的 ::1,就是 ipv4 的 127.0.0.1
不知道你是怎麼做的

你擷取的是ipv6?

ipv6 的 ::1,就是 ipv4 的 127.0.0.1
不知道你是怎麼做的


度娘“本機外網ip地址 php”就會出現n中解決辦法,下面截取一例:
function get_onlineip() { $onlineip = ''; if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) { $onlineip = getenv('HTTP_CLIENT_IP'); } elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) { $onlineip = getenv('HTTP_X_FORWARDED_FOR'); } elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) { $onlineip = getenv('REMOTE_ADDR'); } elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) { $onlineip = $_SERVER['REMOTE_ADDR']; } return $onlineip; } var_dump(get_onlineip());

本機是武漢的,本意是想獲得本機IP: 27.19.xxx.xxx 湖北省武漢市 電信 這種ip地址。$_SERVER我也不是很懂。在localhost上啟動並執行,所以出現::1是因為ipv6,還是localhost,我也不是很清楚。可以不深究這個問題,因為只想從php裡獲得 27.19.xxx.xxx這種ip地址

麻煩了

你在本機訪問就只能得到 ::1 或 127.0.0.1 或 你機器的 ip
外網的 ip 要從外網訪問才能得到

如果是Linux系統用php執行“curl ifconfig.me”可以得到外網IP

你在本機訪問就只能得到 ::1 或 127.0.0.1 或 你機器的 ip
外網的 ip 要從外網訪問才能得到


嗯,這個別人也跟我講過。
我奇怪的是,度娘“本機外網ip地址”,就會給我27.19.xxx.xxx的ip地址。我也沒有一個頁面可以給他訪問來擷取我外網的ip地址啊,所以也不能在cmd中用ipconfig。
那度娘是怎麼得到“27.19.xxx.xxx”的?

如果是Linux系統用php執行“curl ifconfig.me”可以得到外網IP


謝啦~~目前用的wamp環境。

你訪問他時,用的不就是外網 ip 嗎?

你訪問他時,用的不就是外網 ip 嗎?


懂了。。3Q。。
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.