ไม่สามารถเชื่อมต่อกับการเชื่อมต่อ localhost ใด ๆ


12

ฉันกำลังใช้ Centos 6.5 พร้อมอัปเดตล่าสุด

ปัญหาของฉันคือเมื่อใดก็ตามที่ฉันพยายามที่จะเชื่อมต่อกับบริการในท้องถิ่นมันก็แค่แฮงค์เช่น:

wget

wget 127.0.0.1
--2014-03-11 12:43:42--  http://127.0.0.1/
Connecting to 127.0.0.1:80...
After a while timeout...

SSH

# ssh 127.0.0.1 -p 6060 -v
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to 127.0.0.1 [127.0.0.1] port 6060.
debug1: connect to address 127.0.0.1 port 6060: Connection timed out
ssh: connect to host 127.0.0.1 port 6060: Connection timed out

และแฮงเอาท์หมดเวลา

เหมือนกันกับ telnet และเหมือนกันกับการเชื่อมต่อกับเซิร์ฟเวอร์ irc การเชื่อมต่อภายนอกทำงานได้ดี ...

netstat -tpln

# netstat -tpln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      589/sendmail        
tcp        0      0 127.0.0.1:6060              0.0.0.0:*                   LISTEN      520/sshd            
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      619/nginx           
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      478/sshd            
tcp        0      0 ::1:6060                    :::*                        LISTEN      520/sshd            
tcp        0      0 :::22                       :::*                        LISTEN      478/sshd            

netstat -rn

# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 venet0
0.0.0.0         0.0.0.0         0.0.0.0         U         0 0          0 venet0

iptables

ฉัน arleady ล้าง iptables โดยไม่มีโชค เอาท์พุทแบบฟอร์ม iptables:

# iptables -nvL
Chain INPUT (policy ACCEPT 634 packets, 49819 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 517 packets, 47027 bytes)
 pkts bytes target     prot opt in     out     source               destination         

กำหนดค่า Loopback

# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: venet0: <BROADCAST,POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN 
    link/void 
    inet 127.0.0.1/32 scope host venet0
    inet 176.122.224.115/32 brd 176.122.224.115 scope global venet0:0

การเปลี่ยน SELinux ไม่ได้ปรับปรุงอะไรเลย

เส้นทาง IP แสดงตารางท้องถิ่น

# ip route show table local
local 176.122.224.115 dev venet0  proto kernel  scope host  src 176.122.224.115 
broadcast 176.122.224.115 dev venet0  proto kernel  scope link  src 176.122.224.115 
broadcast 127.255.255.255 dev lo  proto kernel  scope link  src 127.0.0.1 
broadcast 127.0.0.0 dev lo  proto kernel  scope link  src 127.0.0.1 
local 127.0.0.1 dev lo  proto kernel  scope host  src 127.0.0.1 
local 127.0.0.0/8 dev lo  proto kernel  scope host  src 127.0.0.1 

traceroute

# traceroute 127.0.0.1
traceroute to 127.0.0.1 (127.0.0.1), 30 hops max, 60 byte packets
 1  localhost.localdomain (127.0.0.1)  0.029 ms  0.014 ms  0.012 ms

ping 127.0.0.1

ทำงานได้ดี

# ping 127.0.0.1
PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.024 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.036 ms

สิ่งที่แปลกประหลาดที่สุดเกี่ยวกับเรื่องนี้คือฉันสามารถเชื่อมต่อกับเซิร์ฟเวอร์ ssh, nginx จากที่อยู่ภายนอก (เช่นคอมพิวเตอร์ที่ฉันใช้) โดยไม่มีปัญหา

สิ่งนี้เกิดขึ้นหลังจาก ISP รีบูตเซิร์ฟเวอร์ของฉัน สิ่งที่อาจมีประโยชน์ก็คือเซิร์ฟเวอร์ได้รับการอัปเดตบ่อยครั้งโดยไม่ต้องบูตเครื่องใหม่


โอ้ยังไงก็ตามการกำหนดค่าวนกลับถูกตั้งค่า? การทดสอบด้วยหรือip a ifconfig
PersianGulf

มีการตั้งค่า Yup, pastebin.centos.org/8351หรือฉันอ่านเอาต์พุตไม่ดี
badray

@badray คุณมีการเปลี่ยนแปลงการกำหนดค่า ip ครั้งล่าสุดโดยใช้ ifconfig และการเปลี่ยนแปลงที่ไม่ได้รับการบันทึกสิ่งที่ให้ tracert 127.0.0.1?
Kiwy

@badray โปรดแก้ไขคำถามของคุณแทนที่จะคัดลอกสิ่งต่าง ๆ ในถังขยะที่ผ่านมามันก็โอเคที่จะมีคำถามยาว ๆ เป็นไมล์ถ้าข้อมูลมีความสำคัญ และใช่คุณtracerouteไม่ถูกต้องให้tracertอะไรping 127.0.0.1คุณ
กีวี

@ Kiwy Ok เสร็จตามที่คุณร้องขอ คัดลอกผลลัพธ์ทั้งหมดไปยังคำถาม ปิงใช้งานได้ดี เพิ่งเพิ่มไปยังคำถาม
badray

คำตอบ:


6

ฉันมีปัญหาเดียวกันกับที่คุณอธิบาย ฉันไม่สามารถเชื่อมต่อกับพอร์ตการรับฟังใด ๆ บนโฮสต์จากภายในเครื่อง แต่สามารถเชื่อมต่อเมื่อระยะไกล

ทางออกสำหรับฉันคือนำอินเทอร์เฟซแท้จริงสำรองซึ่งลงด้วยเหตุผลบางอย่างและไม่มาอัพในการบูท

ifconfig lo up

หลังจากนำอินเทอร์เฟซสำรองและยืนยันว่าฉันสามารถดูloอินเทอร์เฟซด้วย ...

ifconfig -a

ฉันสามารถขึ้นกับวันของฉัน ... :)

ฉันสังเกตเห็นว่าเมื่อใช้งานip aที่ฉันไม่เห็น 127.0.0.1 กำหนดให้กับ lo: อินเตอร์เฟส นี่คือสิ่งที่ฉันพูดถึงในความจริงที่ว่าฉันต้องการอินเทอร์เฟซที่จะทำงานเช่นกัน ...


ขอบคุณมากสำหรับคำตอบนี้ มันนำทางฉันไปในทิศทางที่ถูกloต้องซึ่งถูก "up" โดยไม่ต้องมีที่อยู่ IP ใด ๆ ifdown lo && ifup loซ่อมให้ฉัน แต่ฉันก็ยังคิดว่ามันค่อนข้างแปลก
Mitja

5

ตามifconfigผลลัพธ์ที่คุณโพสต์คุณมีที่อยู่ลูปแบ็ค127.0.0.1ตั้งอยู่บนสองอินเตอร์เฟส

ลอง

ip addr del 127.0.0.1/32 dev venet0

และดูว่าการเข้าถึงลูปแบ็คของคุณถูกกู้คืนหรือไม่


ตอนนี้ก็มีลักษณะเช่นเดียวกับ: pastebin.centos.org/8356 การเชื่อมต่อไม่ทำงาน
Badray

1
โปรดเพิ่มเนื้อหาของตารางเส้นทางของคุณ ( netstat -rn)
Flup

คุณอยู่ที่นี่: pastebin.centos.org/8361
badray

@ กีวี่ฉันเพิ่มการเชื่อมโยง pastebin เสมอกับเอาท์พุทเพราะฉันเป็นนักพัฒนาที่ดีกว่าดูแลระบบและฉันไม่แน่ใจเสมอไปว่าฉันอ่านเอาต์พุตอย่างถูกต้อง แก้ไข: หลังจาก reasearch netstat -rnไม่ควรพิมพ์เส้นทาง localhost ip route show table localควรและมันก็ทำเช่นนี้ไม่ใช่กรณี
badray

0

Flup ตอบถูก แต่ฉันพบว่าคำถามนี้มีเหตุผลอื่น ฉันคิดว่าจำเป็นต้องมีคำตอบอื่น เซิร์ฟเวอร์ฉันเริ่มผูกกับซ็อกเก็ต IPv6และฉันควรใช้ที่อยู่อื่นเพื่อเชื่อมต่อเช่น:

nc ::1 8080

หรือ

curl http://[::1]:8080/
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.