ฉันจะรู้ที่อยู่ IP ของผู้ใช้รายอื่นที่เข้าสู่ระบบที่เครื่องระยะไกลเดียวกันได้อย่างไร


13

ฉันสามารถดูชื่อของผู้ใช้อื่น ๆ ในเครื่องระยะไกลด้วยwhoคำสั่ง ... ฉันต้องการทราบที่อยู่ IP ของผู้ใช้เหล่านั้น ...

ฉันลองใช้คำสั่ง/sbin/ifconfingแล้วnetstatแต่ไม่สามารถรับผลลัพธ์ในเชิงบวก ...

ฉันต้องการโซลูชันนี้ที่เข้ากันได้กับ Linux และ Unix ...

มีคำสั่งสำหรับยูทิลิตีนั้นหรือไม่? ฉันจำเป็นต้องเขียนสคริปต์หรือใช้ไพพ์หรือไม่?


5
เพื่อให้ชัดเจนwhoไม่บอกคุณเกี่ยวกับผู้ใช้ในเครือข่ายเดียวกันเพียงผู้ใช้ที่ล็อกอินเข้าสู่เครื่องเดียวกับคุณ
jw013

เมื่อฉันเข้าสู่ระบบในเครื่องห่างไกลwhoให้ฉันชื่อเครื่องกำเนิดของฉันทั้งลินุกซ์และโซลาริส (เขตข้อมูลสุดท้ายระหว่างวงเล็บเมื่อเข้าสู่ระบบในเครื่องจาก XI ได้รับการแสดง X) รับ IP จากที่ควรจะง่าย ( nslookup, host)
AProgrammer

คำตอบ:


17

ลองใช้wคำสั่งซึ่งเป็นส่วนหนึ่งของprocpsแพ็คเกจ

$ w
 21:12:09 up 6 days,  7:42,  1 user,  load average: 0.27, 1.08, 1.64
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
h3xx     pts/11   192.168.1.3      21:12    2.00s  0.04s  0.04s -bash

มีprocpsแพ็คเกจใน Unix (เฉพาะ Solaris) หรือไม่
omar

5

whomanpage ใน Debian Linux แสดงให้เห็นว่าระบบของฉันมีการ--ipsเลือกที่จะ IP ที่แสดงผลแทนชื่อโฮสต์


ฉันจะลองใช้ตัวเลือกนั้นเมื่อฉันจะกลับไปที่ห้องปฏิบัติการเครือข่าย Solaris ในระบบ Xubuntu ของฉันไม่แสดงที่อยู่ IP
omar

4
ฉันไม่ได้ตั้งค่าสถานะนี้ใน Gentoo เช่นกัน ดูเหมือนว่ามันถูกเพิ่มโดย Debian ใน 5.96-3 ซึ่งเป็นส่วนหนึ่งของbug 363126
Michael Mrozek

1
การตั้งค่าสถานะนี้ไม่มีอยู่ในระบบ SuSe ของฉันเช่นกัน
n0pe

CentOS 6.5 ไม่มีตัวเลือกนั้น
รวม

ไม่มี--ipsตัวเลือกในส่วนโค้งเช่นกัน
Neel Basu

1

whoเป็นคำสั่งที่ฉันใช้ แต่ไม่น่าเชื่อถือ 100% ชื่อผลลัพธ์มาจากระเบียน PTR สำหรับที่อยู่ IP อาจมีหรือไม่มีระเบียน A ที่ตรงกันสำหรับชื่อ

ข้อมูลจากpsและnetstatสามารถรวมกันได้หากคุณมีสิทธิ์ใช้งานรูท มิฉะนั้นคุณสามารถทำการเดาได้อย่างมีการศึกษาว่าการเชื่อมต่อใดเป็นของกระบวนการ

มีเครื่องมืออื่น ๆ ที่สามารถใช้ได้ แต่ฉันไม่พบโปรแกรมใด ๆ ที่มีพารามิเตอร์และผลลัพธ์ที่สอดคล้องกันในรสชาติของ UNIX / Linux


1

ใน UNIX เก่า (เช่น SCO OpenServer Release 5.0.7) wคำสั่งเป็นการเริ่มต้นที่ดี แต่ที่อยู่ IP จะไม่ส่งออกโดยค่าเริ่มต้น อาร์กิวเมนต์คำสั่งบางครั้งจำเป็นต้องมี จากmanหน้า:

-x
   Print out the hostname. This option cannot be used with
   the -u option.

-X
   Print out full hostnames. This option implies the -x
   option. Hostnames printed by the -x option are truncated
   to fit into a field; hostnames printed by the -X option
   are not truncated.

ตัวอย่างเช่น:

$ w
  2:39pm  up 2 days, 11:07,  1 user,  load average: 0.00, 0.00, 0.00
User     Tty       Login@   Idle   JCPU   PCPU  What
minime   ttyp0     2:31pm      -      -      -  w
$ w -x
  2:39pm  up 2 days, 11:07,  1 user,  load average: 0.00, 0.00, 0.00
User     Tty       Login@   Idle   JCPU   PCPU Hostname           What
minime   ttyp0     2:31pm      -      -      - 192.168.36.188     w -x
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.