У меня есть две коробки: одна ubuntu v10.10 (IP: 192.168.12.128) и другая centos v5.5 (IP: 192.168.12.131)
Я могу пинговать centos из коробки ubuntu и наоборот.
Когда я telnet UBUNTUIP, используя порт 7000 от centos, он работает
когда я telnet CENTOSIP, используя порт 7000 из ubuntu, я получаю сообщение об ошибке «Невозможно подключиться к удаленному хосту: нет маршрута к хосту»
Я попытался открыть порт в CentOS с помощью команды iptables -A INPUT -p tcp --dport 7000 -j ACCEPT
но я все еще не могу подключиться к centos через этот порт.
Причина, по которой я хочу открыть порт 7000, потому что я пытаюсь настроить кластер кассандры.
Пожалуйста, дайте мне знать, что я здесь делаю не так и что я могу сделать, чтобы это сработало.
Обновить
вывод sudo iptables --list
Chain INPUT (policy ACCEPT) target prot opt source destination RH-Firewall-1-INPUT all -- anywhere anywhere Chain FORWARD (policy ACCEPT) target prot opt source destination RH-Firewall-1-INPUT all -- anywhere anywhere Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain RH-Firewall-1-INPUT (2 references) target prot opt source destination ACCEPT all -- anywhere anywhere ACCEPT icmp -- anywhere anywhere icmp any ACCEPT esp -- anywhere anywhere ACCEPT ah -- anywhere anywhere ACCEPT udp -- anywhere 224.0.0.251 udp dpt:mdns ACCEPT udp -- anywhere anywhere udp dpt:ipp ACCEPT tcp -- anywhere anywhere tcp dpt:ipp ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh REJECT all -- anywhere anywhere reject-with icmp-host-prohibited ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:afs3-fileserver
Вывод netstat -putna ОБНОВЛЕНО Для CentOS при запущенной кассандре
Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:800 0.0.0.0:* LISTEN 3586/rpc.statd tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 3554/portmap tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 4592/java tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 3812/cupsd tcp 0 0 192.168.12.131:7000 0.0.0.0:* LISTEN 4592/java tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 3835/sendmail: acce tcp 0 0 0.0.0.0:54650 0.0.0.0:* LISTEN 4592/java tcp 0 0 0.0.0.0:59802 0.0.0.0:* LISTEN 4592/java tcp 0 0 127.0.0.1:51116 127.0.0.1:39490 TIME_WAIT - tcp 0 0 192.168.12.131:51779 192.168.12.128:7000 ESTABLISHED 4592/java tcp 0 0 192.168.12.131:52929 192.168.12.128:7000 ESTABLISHED 4592/java tcp 0 0 :::22 :::* LISTEN 3803/sshd udp 0 0 0.0.0.0:33161 0.0.0.0:* 3936/avahi-daemon: udp 0 0 0.0.0.0:794 0.0.0.0:* 3586/rpc.statd udp 0 0 0.0.0.0:797 0.0.0.0:* 3586/rpc.statd udp 0 0 0.0.0.0:68 0.0.0.0:* 3415/dhclient udp 0 0 0.0.0.0:5353 0.0.0.0:* 3936/avahi-daemon: udp 0 0 0.0.0.0:111 0.0.0.0:* 3554/portmap udp 0 0 0.0.0.0:631 0.0.0.0:* 3812/cupsd udp 0 0 :::51370 :::* 3936/avahi-daemon: udp 0 0 :::5353 :::* 3936/avahi-daemon:
ОБНОВЛЕНО Вывод команды netstat -putna в окне Ubuntu, когда кассандра загорает на обоих окнах
Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 865/mysqld tcp 0 0 0.0.0.0:40333 0.0.0.0:* LISTEN 2019/java tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 2019/java tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1675/apache2 tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 942/cupsd tcp 0 0 192.168.12.128:7000 0.0.0.0:* LISTEN 2019/java tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 881/postgres tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 1675/apache2 tcp 0 0 0.0.0.0:53412 0.0.0.0:* LISTEN 2019/java tcp 0 0 127.0.0.1:9160 0.0.0.0:* LISTEN 2019/java tcp 1 0 192.168.12.128:37629 203.197.174.87:80 CLOSE_WAIT 1918/clock-applet tcp 1 0 192.168.12.128:37630 203.197.174.87:80 CLOSE_WAIT 1918/clock-applet tcp 0 1 192.168.12.128:49373 192.168.12.131:7000 SYN_SENT 2019/java tcp 0 0 192.168.12.128:7000 192.168.12.131:46356 ESTABLISHED 2019/java tcp 0 0 192.168.12.128:7000 192.168.12.131:56337 ESTABLISHED 2019/java tcp 1 0 192.168.12.128:54117 203.197.174.80:80 CLOSE_WAIT 1918/clock-applet tcp6 0 0 ::1:631 :::* LISTEN 942/cupsd tcp6 0 0 ::1:5432 :::* LISTEN 881/postgres udp 0 0 0.0.0.0:60819 0.0.0.0:* 713/avahi-daemon: r udp 0 0 0.0.0.0:68 0.0.0.0:* 753/dhclient udp 0 0 0.0.0.0:5353 0.0.0.0:* 713/avahi-daemon: r udp6 0 0 ::1:51637 ::1:51637 ESTABLISHED 881/postgres udp6 0 0 :::52390 :::* 713/avahi-daemon: r udp6 0 0 :::5353 :::* 713/avahi-daemon: r
Вывод telnet localhost 7000 после остановки службы iptables
Trying 127.0.0.1... telnet: connect to address 127.0.0.1: Connection refused telnet: Unable to connect to remote host: Connection refused
Вышеупомянутое является выводом, потому что cassandra просто не начнет пытаться найти начальный узел (поле ubuntu), ошибка - «соединение отклонено», тогда как ошибка telnet ubuntu - «Нет маршрута к хосту»
ОБНОВИТЬ
Мне удалось решить эту проблему - порт заблокирован брандмауэром. Проблема стала еще более серьезной, если вы добавите человека вроде меня, который абсолютно не знает привязки портов (когда к порту можно получить доступ - только когда какое-то приложение прослушивает для него @dyasny, это помогло мне диагностировать и изучить несколько основ) и ОС Linux.
Спасибо вам всем за помощь.
Судеш
Правило по умолчанию в CentOS не INPUT
, его RH-Firewall-1-INPUT
Введите следующее правило в /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 7000 -j ACCEPT
Затем перезапустите iptables через /etc/init.d/iptables restart
iptables -F
или service
iptables stop
service $servicename status
netstat -putna
telnet localhost
7000