Potrzebuję być w stanie znaleźć adres IP serwera, na którym aktualnie wykonuje się strona. Mam kod, który wywołuje witrynę innej firmy i musi przekazać określony klucz, który zmienia się w zależności od serwera, na którym się znajduje. Czy istnieje zmienna CGI lub w jakiś sposób w ColdFusion, aby określić, jaki jest adres IP serwera hosta?Jak uzyskać adres IP serwera aplikacji?
Odpowiedz
użyłbym hostip.info API
Your IP w formacie XML: http://api.hostip.info/get_xml.php
Your IP w HTML: http://api.hostip.info/get_html.php
Najbezpieczniejszym sposobem będzie skorzystanie z usługi takiej jak WhatIsMyIP. Jeśli serwer znajduje się za NATem, system operacyjny nie ma wiedzy o zewnętrznym adresie IP.
Istnieje wiele pytań dotyczących SO, zobacz na przykład here.
Istnieją dwa powody, dla których program nie może zapytać host jest uruchomiony na i zobaczyć, co jest jego IP:
To może mieć wiele adresów IP, i krótkie spojrzenie przez wszelkiego rodzaju danych jądra struktur, z których prawdopodobnie nie będziesz wiedział, który z nich będzie używany dla danego połączenia wychodzącego.
Może łączyć się ze światem zewnętrznym za pomocą zapory NAT lub jakiegoś proxy, tak że świat zewnętrzny będzie widział inne IP niż te skonfigurowane w twoim pudełku.
Właściwie może być ich więcej, ale są to te, które przyszło mi do głowy.
Z tego powodu najprostszym sposobem jest połączenie się z inną skrzynką gdzieś poza siecią firmową i sprawdzenie, jakie IP ma ona na myśli. Używam dwuliniowego skryptu CGI działającego na moim colo boxie, aby wykryć, jaki IP ma obecnie mój serwer macierzysty (dzięki czemu mogę wykryć, kiedy firma kablowa to zmieni).
Podobnie jak inne komentujących nie zarysowanych jeśli potrzebują zewnętrznego IP jako strony trzeciej strony widzi to prawdopodobnie powinni korzystać z zewnętrznych podejść, które zalecają.
Jednakże jeśli strona trzecia daje dostęp w innej formie, która opiera się na rzeczywistym IP, co serwer widzi siebie, a nie IP, jak widzą go można użyć
<cfset cName = CreateObject("java", "java.net.InetAddress").getLocalHost().getHostAddress()>
<cfdump var="#cName#">
Można użyć CGI .LOCAL_ADDR, aby określić adres IP twojego serwera (odpowiednik CFML dla PHP __SERVER ["SERVER_ADDR"]). Działa na IIS i Apache przy użyciu ColdFusion lub Railo, biorąc pod uwagę, że nie jesteś za serwerem proxy, nie natrafiasz na swój adres IP serwera i przypisujesz serwerowi tylko jeden adres IP (nie wiesz, który adres IP zostanie wyświetlony, jeśli jest więcej niż jeden).
<cfhttp url="http://www.whatismyip.com/" result="myresult" resolveurl="yes">
<cfoutput>#myresult.filecontent#</cfoutput>
- 1. Jak uzyskać adres IP serwera?
- 2. Jak uzyskać adres IP klienta i adres IP serwera za pomocą szyn
- 3. Jak uzyskać adres IP serwera/witryny w asp.net?
- 4. Jak uzyskać adres IP serwera, do którego podłączony jest HttpWebRequest?
- 5. Jak uzyskać adres IP klienta?
- 6. Adres IP serwera wyświetlania PHP:
- 7. WICKET: jak uzyskać adres IP/adres IP klienta
- 8. Jak uzyskać adres IP klienta/użytkownika?
- 9. Jak uzyskać adres IP boost :: asio :: ip :: tcp :: socket?
- 10. Jak uzyskać adres IP peera w azocie
- 11. Jak uzyskać adres IP z sockaddr
- 12. Rest - jak uzyskać adres IP dzwoniącego
- 13. Jak uzyskać adres IP węzła erlang?
- 14. Jak uzyskać adres IP od $ SSH_CLIENT
- 15. Jak uzyskać adres IP klienta pulpitu zdalnego?
- 16. Szyny - jak uzyskać adres IP odwiedzającego?
- 17. jak uzyskać adres IP użytkownika w mvc
- 18. Dlaczego ServerVariable ["REMOTE_ADDR"] zwraca adres IP serwera?
- 19. SQL - Zapytanie o adres IP serwera
- 20. jaki jest adres IP mojej aplikacji heroku
- 21. Jak zdobyć adres IP klienta?
- 22. Jak uzyskać dokładny adres IP Restify server na listen?
- 23. Uzyskaj adres IP serwera z JSP Żądanie/obiekt sesji
- 24. adres IP cURL
- 25. Jak uzyskać bieżący adres URL aplikacji Appengine?
- 26. Uzyskaj adres IP użytkownika
- 27. Function, aby uzyskać adres IP użytkownika
- 28. Jak uzyskać adres IP użytkownika za pomocą .net?
- 29. Jak uzyskać adres IP klienta w Javie HttpServletRequest
- 30. Node.js Jak uzyskać adres IP serwera HTTP nasłuchującego na konkretnym porcie