2012-05-02 32 views
8

Tôi đang cố gắng thương lượng kết nối telnet bằng ổ cắm. Các ổ cắm đang làm việc, nhưng máy chủ nói với tôi rằng điều:Trả lời lệnh Telnet IAC

ÿýÿýÿûÿû 

login: 

Các ÿýÿýÿûÿû nghĩa 255 253 1 255 253 31 255 251 1 255 251 3

Tôi đọc tất cả các tài liệu RFC nhưng tôi don 't hiểu những gì tôi nên trả lời với để có thể gửi (chuỗi ascii dữ liệu?) Cho máy chủ, mong muốn của tôi là để chạy dấu nhắc đăng nhập thành công và sau đó gửi lệnh đến một máy chủ như "tạm dừng" hoặc cái gì khác.

Cảm ơn trước vì câu trả lời của bạn.

+0

Máy khách telnet bình thường (từ dòng lệnh) tắt IAC/đàm phán nếu nó không kết nối với cổng telnet nước ngoài. Các mã IAC dễ phân tích: IIRC có các chuỗi hai byte và ba byte, trong hầu hết các trường hợp, bạn có thể bỏ qua mọi thứ ngoại trừ công tắc bật/tắt tiếng vang. Tra cứu nó trong RFC. – wildplasser

+0

BTW: các mã trong bài đăng bị hỏng. 255 + 253 là một phần của một chuỗi ba byte (IAC + DO + option_number) Thứ hai byte {251,252,253,254} -> mong đợi một byte thứ ba để làm theo. – wildplasser

+0

Tôi đã chỉnh sửa bài đăng của mình! –

Trả lời

22

Từ RFC 854:

Kể từ các NVT là những gì còn lại khi không có tùy chọn được kích hoạt, DO NOT và SẼ KHÔNG phản ứng được bảo đảm để rời khỏi kết nối trong tình trạng mà cả hai đầu có thể xử lý. Do đó, tất cả các máy chủ có thể triển khai các quy trình TELNET của họ hoàn toàn không biết các tùy chọn không được hỗ trợ , đơn giản là từ chối (ví dụ: từ chối) bất kỳ yêu cầu tùy chọn nào không thể hiểu được.

Tức là, đối với mỗi WILL, trả lời DONT. Đối với mỗi DO, hãy trả lời WONT.

Trong trường hợp của bạn, bạn đã nhận được (xem IANA assigned telnet options):

255 253 1 IAC DO ECHO 
255 253 31 IAC DO NAWS 
255 251 1 IAC WILL ECHO 
255 251 3 IAC WILL SUPPRESS-GO-AHEAD 

Vì vậy, bạn nên trả lời:

255 252 1 IAC WONT ECHO 
255 252 31 IAC WONT NAWS 
255 254 1 IAC DONT ECHO 
255 254 3 IAC DONT SUPPRESS-GO-AHEAD 

Lưu ý rằng bạn không cần phải biết những gì 1, 3, hoặc 31 thực sự có ý nghĩa. Đó là cái đẹp. Bạn có thể từ chối các tùy chọn đó mà không hề biết định nghĩa của chúng. Bạn sẽ chỉ mặc định với thiết bị đầu cuối ảo mạng.

+0

Nó hoạt động! Cảm ơn rất nhiều vì ánh sáng của bạn :) –

1

Nhìn nó lên trong RFC 854

255 253 1 IAC DO #1 
255 253 31 IAC DO #31 
255 251 1 IAC WILL #1 
255 251 3 IAC WILL #3 

Bây giờ nhìn lên các giá trị tham số trong here: 1: = tiếng vang, 31: = kích thước cửa sổ.

Các vấn đề liên quan