Hướng dẫn javascript get ip address of host - javascript lấy địa chỉ ip của máy chủ

Có cách nào bạn có thể tìm thấy IP của máy chủ mà trình duyệt được kết nối không? Ví dụ: Nếu trình duyệt đang truy cập http://www.google.com, chúng ta có thể nói bằng cách nào IP mà nó được kết nối không? Điều này rất hữu ích trong các trường hợp thực hiện DNS vòng tròn. Vì vậy, hãy nói, yêu cầu đầu tiên cho a.com dẫn đến 1.1.1.1 và yêu cầu tiếp theo dẫn đến 1.1.1.2 và cứ thế.

Tôi không thể tìm thấy bất kỳ cách nào để làm điều đó với JavaScript. Nó thậm chí có thể? Nếu không có cách nào để tìm thông tin này?

Hướng dẫn javascript get ip address of host - javascript lấy địa chỉ ip của máy chủ

informatik01

15.8k10 Huy hiệu vàng73 Huy hiệu bạc102 Huy hiệu Đồng10 gold badges73 silver badges102 bronze badges

hỏi ngày 2 tháng 9 năm 2009 lúc 23:45Sep 2, 2009 at 23:45

2

Hãy thử điều này như một lối tắt, không phải là một giải pháp dứt khoát (xem bình luận):


Giải pháp này không thể hoạt động trong một số kịch bản nhưng nó có thể giúp thử nghiệm nhanh. Trân trọng

Đã trả lời ngày 7 tháng 2 năm 2013 lúc 17:57Feb 7, 2013 at 17:57

Hướng dẫn javascript get ip address of host - javascript lấy địa chỉ ip của máy chủ

SpacemonkeyspacemonkeySpacemonkey

1.6833 huy hiệu vàng20 Huy hiệu bạc43 Huy hiệu đồng3 gold badges20 silver badges43 bronze badges

3

Khá chắc chắn điều này không thể được thực hiện. Tuy nhiên, bạn có thể sử dụng ngôn ngữ phía máy chủ ưa thích của mình để in IP của máy chủ cho máy khách và sau đó sử dụng nó theo cách bạn thích. Ví dụ, trong PHP:


Điều này phụ thuộc vào thiết lập bảo mật của máy chủ của bạn - một số có thể chặn điều này.

Đã trả lời ngày 3 tháng 9 năm 2009 lúc 0:26Sep 3, 2009 at 0:26

Jason Berryjason BerryJason Berry

2.4691 Huy hiệu vàng17 Huy hiệu bạc21 Huy hiệu đồng1 gold badge17 silver badges21 bronze badges

3

Không chắc chắn làm thế nào để có được địa chỉ IP một cách cụ thể, nhưng đối tượng vị trí cung cấp một phần của câu trả lời.

ví dụ. Các biến này có thể hữu ích:

  • 
    
    0 - Đặt hoặc truy xuất tên máy chủ và số cổng của vị trí
  • 
    
    1 - Đặt hoặc truy xuất tên máy chủ một phần của vị trí hoặc URL.

Jamie Barker

8.0153 Huy hiệu vàng27 Huy hiệu bạc62 Huy hiệu Đồng3 gold badges27 silver badges62 bronze badges

Đã trả lời ngày 3 tháng 9 năm 2009 lúc 0:11Sep 3, 2009 at 0:11

Hookenzhookenzhookenz

34,6K42 Huy hiệu vàng167 Huy hiệu bạc274 Huy hiệu đồng42 gold badges167 silver badges274 bronze badges

1

Tôi nghĩ rằng bạn có thể sử dụng cuộc gọi lại từ yêu cầu JSONP hoặc có thể chỉ là dữ liệu JSON thuần túy bằng dịch vụ bên ngoài nhưng dựa trên đầu ra của JavaScript


2 theo cách đó:

$.getJSON( "//freegeoip.net/json/" + window.location.host + "?callback=?", function(data) {
    console.warn('Fetching JSON data...');
    // Log output to console
    console.info(JSON.stringify(data, null, 2));
});

Tôi sẽ sử dụng mã này cho nhu cầu cá nhân của tôi, vì lần đầu tiên tôi đến trên trang web này vì lý do tương tự.

Bạn có thể sử dụng một dịch vụ bên ngoài khác thay vì dịch vụ tôi đang sử dụng cho nhu cầu của mình. Một danh sách rất đẹp tồn tại và chứa các bài kiểm tra được thực hiện ở đây https://stackoverflow.com/a/35123097/5778582

Đã trả lời ngày 15 tháng 11 năm 2016 lúc 15:30Nov 15, 2016 at 15:30

Jiab77Jiab77Jiab77

3493 Huy hiệu bạc11 Huy hiệu đồng3 silver badges11 bronze badges

8

Bạn không thể có được điều này nói chung. Từ JavaScript, bạn chỉ có thể nhận được tiêu đề HTTP, có thể hoặc không có địa chỉ IP (thường chỉ có tên máy chủ). Một phần của chương trình của trình duyệt là trừu tượng hóa địa chỉ TCP/IP và chỉ cho phép bạn xử lý tên máy chủ.

Đã trả lời ngày 3 tháng 9 năm 2009 lúc 1:20Sep 3, 2009 at 1:20

Trên thực tế, không có cách nào để làm điều này thông qua JavaScript, trừ khi bạn sử dụng một số nguồn bên ngoài. Ngay cả sau đó, nó có thể không đúng 100%.

Đã trả lời ngày 25 tháng 9 năm 2009 lúc 20:20Sep 25, 2009 at 20:20

JohnjohnJohn

1.5813 huy hiệu vàng18 Huy hiệu bạc27 Huy hiệu đồng3 gold badges18 silver badges27 bronze badges

Có thể thực hiện điều này thông qua một trình cắm như Java Applet hoặc Flash, sau đó yêu cầu JavaScript gọi một hàm trong Applet hoặc ngược lại (hoặc có JS gọi hàm trong Flash hoặc Plugin khác) và trả về IP. Đây có thể không phải là IP được trình duyệt sử dụng để lấy nội dung trang. Ngoài ra, nếu có hình ảnh, CSS, JS -> Trình duyệt có thể đã thực hiện nhiều kết nối. Tôi nghĩ rằng hầu hết các trình duyệt chỉ sử dụng IP đầu tiên mà họ nhận được từ cuộc gọi DNS (được kết nối thành công, không chắc điều gì xảy ra nếu một nút đi xuống sau khi có ít tài nguyên và vẫn để có được các bộ định thời khác - AJAX/ AJAX thêm HTML đề cập đến tài nguyên).

Nếu Java Applet phải được ký kết, hãy kết nối với Window.Location (nhận từ JavaScript, trong trường hợp Applet là chung và có thể được sử dụng trên bất kỳ trang nào trên bất kỳ máy chủ nào) chỉ cần quay lại máy chủ nhà và sử dụng java.net. Địa chỉ để nhận IP.

Đã trả lời ngày 24 tháng 4 năm 2014 lúc 12:12Apr 24, 2014 at 12:12

Hướng dẫn javascript get ip address of host - javascript lấy địa chỉ ip của máy chủ

TGKProgtgKProgtgkprog

4.3604 Huy hiệu vàng43 Huy hiệu bạc70 Huy hiệu đồng4 gold badges43 silver badges70 bronze badges

1

Bạn có thể thực hiện một nslookup trên


3!

const oReq = new XMLHttpRequest();
oReq.onload = function () {
  const response = JSON.parse(this.responseText);
  alert(JSON.stringify(response.dns_entries));
}  
oReq.open("get", "https://www.enclout.com/api/v1/dns/show.json?auth_token=rN4oqCyJz9v2RRNnQqkx&url=" + encodeURIComponent(location.hostname), true);
oReq.send();

Chỉnh sửa: Trang web không hoạt động nữa và bị lỗi CORS!

Bây giờ đã bị hỏng, vì vậy bạn có thể thử: Thêm điều này vào HTML:


4 và sau đó trong JS:

const resolver = new doh.DohResolver('https://1.1.1.1/dns-query');
resolver.query(location.hostname, 'A')
  .then(response => {
    response.answers.forEach(ans => console.log(ans.data));
  })
  .catch(err => console.error(err));

Đã trả lời ngày 5 tháng 2 lúc 4:28Feb 5 at 4:28

Hướng dẫn javascript get ip address of host - javascript lấy địa chỉ ip của máy chủ

Tôi tin rằng câu trả lời của John là chính xác. Chẳng hạn, tôi đang sử dụng máy tính xách tay của mình thông qua dịch vụ WiFi do trung tâm hội nghị điều hành - Tôi khá chắc chắn rằng không có cách nào để JavaScript chạy trong trình duyệt của tôi để khám phá địa chỉ IP được sử dụng bởi nhà cung cấp dịch vụ. Mặt khác, có thể giải quyết một tài nguyên bên ngoài phù hợp từ JavaScript. Bạn có thể tự viết nếu của riêng bạn bằng cách thực hiện cuộc gọi AJAX đến máy chủ có thể lấy địa chỉ IP từ các tiêu đề HTTP và trả lại, hoặc thử Googling "Tìm IP của tôi". Giải pháp sạch nhất có lẽ là nắm bắt thông tin trước khi trang được phục vụ và chèn nó vào HTML được trả lại cho người dùng. Xem cách lấy địa chỉ IP của người xem với Python? Để biết thông tin về cách nắm bắt thông tin nếu bạn đang phục vụ trang với Python.

Đã trả lời ngày 14 tháng 4 năm 2015 lúc 7:19Apr 14, 2015 at 7:19

Hướng dẫn javascript get ip address of host - javascript lấy địa chỉ ip của máy chủ

M juckesm juckesM Juckes

2911 Huy hiệu bạc6 Huy hiệu đồng1 silver badge6 bronze badges


Đã trả lời ngày 26 tháng 11 năm 2020 lúc 19:45Nov 26, 2020 at 19:45

Hướng dẫn javascript get ip address of host - javascript lấy địa chỉ ip của máy chủ

1

Tôi chắc chắn rằng mã sau sẽ giúp bạn nhận được địa chỉ IP.




Đã trả lời ngày 15 tháng 9 năm 2016 lúc 5:41Sep 15, 2016 at 5:41

Hướng dẫn javascript get ip address of host - javascript lấy địa chỉ ip của máy chủ

Rana Aalamgeerrana AalamgeerRana Aalamgeer

6922 Huy hiệu vàng7 Huy hiệu bạc22 Huy hiệu đồng2 gold badges7 silver badges22 bronze badges

2

Tôi có thể lấy địa chỉ IP từ JavaScript không?

JavaScript hoạt động với các ứng dụng của bên thứ ba để tìm nạp địa chỉ IP.Đây là các dịch vụ ứng dụng tìm nạp địa chỉ IP của người dùng và chỉ cần trả lại theo ba định dạng, ví dụ: Định dạng văn bản thuần túy, JSON và JSONP.Có vô số chúng có sẵn trên Internet.. These are the application services that fetch the user's IP address and simply return it in three formats, ie., plain text, JSON, and JSONP format. There are loads of them available on the internet.

Làm cách nào để tìm địa chỉ IP máy chủ của tôi trong Node JS?

Cách sử dụng Req ...
const http = yêu cầu ("http") ;.
const requestListener = function (req, res) {.
res.Kết thúc ("Địa chỉ IP của bạn là:" + Ổ cắm lại. LocalAddress) ;.
const Server = http.createderver (requestListener) ;.
const port = quá trình.Env.Cổng ||3000 ;.

Làm cách nào để nhận địa chỉ IP từ HTML?

var ip = httpcontext.civerse.request.servervariables ["remote_addr"];var ip = yêu cầu. Current. Request. ServerVariables["REMOTE_ADDR"]; var ip = Request.

Làm cách nào để nhận được địa chỉ IP?

Trên Android/Tablet, hãy truy cập cài đặt mạng WiFi của bạn, sau đó chọn mạng bạn được kết nối.Bạn sẽ tìm thấy địa chỉ IP của bạn cùng với thông tin mạng khác.Go to your Wifi network settings, then select the network you're connected to. You'll find your IP address along with the other network information.