Hi,
bin am Verzweifeln.
Ich habe Win2k auf einer VirtualBox laufen, Hostsystem Linux (Wheezy). Hier meine "/etc/network/interfaces":
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface ### eth0 ###
# Hardware (Adresse "bc:5f:f4:e2:a8:b4"): /etc/udev/rules.d/70-persistent-net.rules
auto eth0
# Interface (Device) eth0 wird beim Systemstart konfiguriert.
iface eth0 inet static
address 192.168.2.1
# Hostadresse, /etc/hosts, "Melina"
gateway 192.168.2.254
# Default-Gateway (hier der DSL-Router)
netmask 255.255.255.0
# DNS-Server: /etc/resolv.conf "nameserver 192.168.2.254" (DSL-Router) - wenn er beim Start dranhängt
Die "/etc/hosts":
127.0.0.1 localhost
192.168.2.1 Melina
192.168.2.2 Winlina
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
Adaptertyp in den VirtualBox-Netzwerkeinstellungen "Bridged":
Die Netzwerkverbindung unter Windows auf der VM ist so konfiguriert:
Also ohne Gateway, d.h ohne Zugriffsmöglichkeit auf den DSL-Router (mit Win2k will ich nicht ins Internet), und der DNS-Server ist von VirtualBox vorgegeben. Ergebnis erst mal:
Und von der anderen Seite:
ifconfig
eth0 Link encap:Ethernet Hardware Adresse bc:5f:f4:e2:a8:b4
inet Adresse:192.168.2.1 Bcast:192.168.2.255 Maske:255.255.255.0
inet6-Adresse: fe80::be5f:f4ff:fee2:a8b4/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1
RX packets:10128 errors:0 dropped:0 overruns:0 frame:0
TX packets:7443 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX bytes:7004156 (6.6 MiB) TX bytes:1164725 (1.1 MiB)
lo Link encap:Lokale Schleife
inet Adresse:127.0.0.1 Maske:255.0.0.0
inet6-Adresse: ::1/128 Gültigkeitsbereich:Maschine
UP LOOPBACK RUNNING MTU:65536 Metrik:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:0
RX bytes:440 (440.0 B) TX bytes:440 (440.0 B)
root@Melina:/home/hk# ping 192.168.2.2
PING 192.168.2.2 (192.168.2.2) 56(84) bytes of data.
64 bytes from 192.168.2.2: icmp_req=24 ttl=128 time=3.88 ms
64 bytes from 192.168.2.2: icmp_req=25 ttl=128 time=0.546 ms
64 bytes from 192.168.2.2: icmp_req=26 ttl=128 time=0.454 ms
64 bytes from 192.168.2.2: icmp_req=27 ttl=128 time=0.700 ms
[...]
So weit, so gut - ich hab' also jetzt wie gewünscht drei Hosts, die so verbunden sind / Verbindung aufnehmen können:
"Melina" 192.168.2.1 --- 192.168.2.254 (DSL-Router) 178.10.180.118 --- (Internet)
|
"Winlina" (VM) 192.168.2.2
Bloß keiner außer "localhost" mit dem MySQL-Server (also der Gast auf der VM gar nicht) - trotz Eintrag in der "/etc/mysql/my.cnf":
bind-address = 0.0.0.0
"netstat -tulpen | fgrep 3306" liefert:
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 114 240064 6284/mysqld
Das besagt doch eigentlich, dass der MySQL-Server auf allen existierenden IP-Adressen auf Verbindungen warten müsste? Tut er aber nicht. Bin also mal nach dieser Anleitung vorgegangen:
http://www.sysadminslife.com/linux/quicktipp-mysql-externer-zugriff-erlauben-bind-address/
http://www.sysadminslife.com/linux/quicktipp-iptables-regeln-dauerhaft-speichern-mit-iptables-persistent-debian-ubuntu-linux-mint/
So sieht meine "/etc/iptables/rules.v4" aus:
# Generated by iptables-save v1.4.14 on Sun Feb 22 21:22:48 2015
*filter
:INPUT ACCEPT [1133:430152]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [828:96059]
-A INPUT -i lo -p tcp -m tcp --dport 3306 -j ACCEPT
-A INPUT -s 192.168.2.1/32 -p tcp -m tcp --dport 3306 -j ACCEPT
-A INPUT -s 192.168.2.2/32 -p tcp -m tcp --dport 3306 -j ACCEPT
COMMIT
# Completed on Sun Feb 22 21:22:48 2015
Und "iptables -L" liefert:
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:mysql
ACCEPT tcp -- Melina anywhere tcp dpt:mysql
ACCEPT tcp -- Winlina anywhere tcp dpt:mysql
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Trotz alledem ist der MySQL-Server nach wie vor nur über "localhost" ansprechbar (also vom Gast auf der VM gar nicht), jeder andere Versuch eines Verbindungsaufbaus schlägt fehl - Beispiel "telnet 192.168.2.1 3306":
Trying 192.168.2.1...
Connected to 192.168.2.1.
Escape character is '^]'.
?Host 'Melina' is not allowed to connect to this MySQL serverConnection closed by foreign host.
Danke im voraus allen die mir da weiterhelfen können.