Mối quan hệ giữa HIỂN THỊ: 1.0 và cổng 5901


7

Khi tôi khởi động máy chủ X mới bằng vncserver, tôi có thể kết nối nó bằng cổng 5901. Từ, giả sử, một thiết bị đầu cuối, tôi cũng có thể thực hiện:

xuất HIỂN THỊ =: 1.0 xterm

(nó chỉ là một ví dụ)

Và tôi nhận được một xterm trên Xvncserver.

Mối quan hệ giữa: 1.0 và cổng 5901 là gì?

Câu trả lời:


13

Cổng 5901, thường là theo quy ước Cổng 5900 + XDisplaynumber, là Cổng TCP mà dịch vụ VNC lắng nghe. Đó là mối quan hệ của họ. Trên thực tế, bạn có thể sử dụng Cổng TCP tùy ý với Xdisplaynumbers tùy ý.

Dịch vụ VNC có nghĩa là vận chuyển đầu vào (chuột, bàn phím) từ máy khách đến máy chủ và đầu ra (một hình ảnh) từ máy chủ đến máy khách. Điều này không cần phải có bất cứ điều gì với X. Ví dụ, trong ảo hóa, VNC thường được sử dụng để làm cho thiết bị đầu cuối "vật lý" của máy ảo có thể truy cập từ xa.

Hệ thống X11 phức tạp hơn nhiều so với hệ thống và các chương trình sử dụng nó để tương tác với Xserver và với nhau. Theo cách nói trong thế giới X ban đầu hơi không trực quan nên ý nghĩa của đầu ra, chỗ ngồi, màn hình, màn hình hiển thị, máy chủ, máy khách cần phải được học và đáng được xem xét.

Đối với câu hỏi của bạn: một Xdisplay là cốt lõi logic của bất kỳ trường hợp X nào. Khi bạn khởi động một chương trình, chương trình đó là Xclient và kết nối với màn hình được cung cấp của Xserver. :1.0thực sự là một sự từ bỏ và có nghĩa là "hiển thị 1 tại localhost". Bạn có thể cung cấp tên máy chủ hoặc địa chỉ IP, ví dụ: HIỂN THỊ = 192.168.1.2: 3.0 để chương trình bạn sắp bắt đầu kết nối với Xdisplay 3 tại máy tính (từ xa) với địa chỉ IP đã cho.

X và VNC là hai dịch vụ hoàn toàn khác nhau được triển khai cho các mục đích khác nhau với các mục tiêu khác nhau. (Người ta có thể lập luận rằng một số / hầu hết các mục tiêu của VNC cũng là mục tiêu khi phát triển X, nhưng điều đó khá hàn lâm và rất sâu sắc.)

Khi sử dụng Xvncserver cả hai khái niệm được kết hợp trở lại. Vì vậy, có một Xserver mà Xclents giao tiếp với "cách thông thường" nhưng thay vì sử dụng phần cứng có sẵn để tương tác với người dùng, Xvncserverit thực hiện một máy chủ VNC mà máy khách VNC có thể kết nối.


ở đây unix.stackexchange.com/questions/12777/ họ nói, cổng cơ sở đó là 6000. Tôi không biết lý do là gì nhưng 6000 = 0,0 làm việc cho tôi (thay vì 5900 = 0,0).
torbatama

Sự khác biệt là VNC. Trên cổng 5900+ (DisplayNumber), bạn kết nối màn hình và đầu vào của mình, bằng trình xem VNC. Trên cổng 6000+ (Số hiển thị) XCl Client kết nối với XServer, đó là các chương trình đang chạy "trên" X. Đó là các giao thức khác nhau với các mục đích khác nhau, như được giải thích trong câu trả lời của tôi.
Bananguin

5

Đương nhiên, không có.

Khi bạn chạy xvncservernó cần làm hai việc.

  1. Mở cổng nghe (đối với VNC là 5901
  2. Tạo mục tiêu hiển thị

Mục tiêu hiển thị có thể là bất kỳ số nào . Thông thường, đăng nhập trên bàn điều khiển qua X sẽ sử dụng màn hình :0. Không cần thiết, bạn có thể đăng nhập vào bảng điều khiển trước rồi mới sử dụng startx :36. VNC sử dụng 1.0theo mặc định vì đây có thể là màn hình có sẵn đầu tiên.

Hai cái này được chọn theo quy ước , không có phép thuật nào gắn kết chúng lại với nhau ngoại trừ quá trình chạy gắn liền với cả hai.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.