ubuntuusers.de

PC-Direktverbindung zwischen Linux Ubuntu und Windows möglich?

Status: Gelöst | Ubuntu-Version: Ubuntu 12.10 (Quantal Quetzal)
Antworten |

jl4jsjsjyjw8sl

Avatar von jl4jsjsjyjw8sl

Anmeldungsdatum:
28. Mai 2010

Beiträge: 391

Ist eine PC-Direktverbindung per Netzwerk-Kabel auch zwischen einem Linux und einem Windows-Notebook möglich? Falls ja: welche Einstellungen muss auf den Windows-Rechner vorgenommen werden?

elektronenblitz63

Avatar von elektronenblitz63

Anmeldungsdatum:
16. Januar 2007

Beiträge: 29307

Wohnort: NRW

jl4jsjsjyjw8sl schrieb:

Ist eine PC-Direktverbindung per Netzwerk-Kabel auch zwischen einem Linux und einem Windows-Notebook möglich?

Ja.

Falls ja: welche Einstellungen muss auf den Windows-Rechner vorgenommen werden?

Auf beiden Systeme muss Ethernet statisch konfiguriert werden, da Windows Avahi (Zeroconf) nicht direkt unterstützt.

Automatisch mit einem kleinen Skript unter Ubuntu dürfte das auch gehen. Dann läuft ein kleiner DHCP-Server und Win bekommt aut. eine IP-Adresse über DHCP. Eingestellt werden muss unter Linux und Windows dann nichts weiter. Der Network-Manager wird ebenfalls automatisch über das Skript gesteuert. Funktioniert auch zwischen Ubuntu/Linux-Systemen wenn Avahi nicht vorkonfiguriert ist, was man ja stattdessen verwenden könnte.

Ändert man im Skript den Adressraum des DHCP-Servers (dnsmasq-base), so kann man auch mehrere Rechner über einen HUB/Switch anschließen und untereinander vernetzen (mini LAN-Party).

Sktipt anlegen und ausführbar machen:

touch linklocal.sh
chmod +x linklocal.sh 

Folgenden Inhalt mit einem Editor einfügen:

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
#!/bin/bash
## Instant Link Local Modus
## elektronenblitz63 ubuntuusers.de 2013
## published under GPL v3
## Version 0.0.2 / 27. April 2013

## LAN statisch 
laniface=eth0
laddress=192.168.3.1
lbroadcast=192.168.3.255
lnetmask=255.255.255.0
lgateway=192.168.3.1

# Basisadresse DHCP-Adresspool (WLAN-IP + X)
# Adresspool / Anzahl Adressen / hier nur eine
# IP-Adresse des Client ist hier 192.168.3.2
lanbaseip=1
ipaddresses=1

# Lease-Time
leasetime=infinite

## Pause in Sekunden für Konfigurationsparameter
## Vorgabewert 2
configdelay=2

#### Ende freie Variablen
##

## be root if not
test `id -u` -eq 0 || exec sudo "$0" "$@"

## Prüfung der Konfiguration
if [ "$1" != "-stop" ]; then

##  prüfe Basiskonfiguration Schnittstellen 
 check_laniface="`ifconfig $laniface | grep Link | awk {'print $1'}`"

if [ "$check_laniface" = $laniface ]; then
echo "LAN-Interface" $laniface "gefunden. Setze Konfiguration fort."

else
 echo "LAN-Interface" $laniface "nicht gefunden! Breche Konfiguration ab."
  exit 0
fi
 fi

echo "Link Local Netzwerkkonfiguration"
 echo "Starte gewählte Konfiguration ..."
  sleep $configdelay

## aut. Adressberechnung DHCP-Range für dnsmasq-base
## gemäß Vorgabe LAN-Schnittstelle

ipaddresses=$[$ipaddresses+$lanbaseip]
 baseendaddr="`echo $laddress | tr -s . " " | awk {'print $4'}`"
  basestartaddr="`echo $laddress | tr -s . " " | awk {'print $1,$2,$3'} | tr -s " " .`"
   endaddr="$basestartaddr""."$[$startaddr+$ipaddresses]
    startaddr="$basestartaddr""."$[$baseendaddr+$lanbaseip]
     ipaddresses=$[$ipaddresses-1]

if [ "$1" != "-start" ]; then
echo "Stoppe alle Dienste und beende die Verbindungen ..."

defgw="`route -n | grep UG | awk {'print $2'}`"
 /sbin/route del default gw $defgw $laniface
  echo '' | tee /etc/resolv.conf
 
   /sbin/ifconfig $laniface down
     /usr/bin/killall dnsmasq
      sleep $configdelay
fi

## Restart Network-Manager - beende Netzwerkkonfiguration
if [ "$1" = "-stop" ]; then
 echo
  echo "reaktiviere Network-Manager."
   service network-manager start
    sleep $configdelay
     service network-manager restart

echo "Konfiguration beendet."
 exit
  fi

# Konfiguration LAN
echo "Beende Network-Manager"
 service network-manager stop
  echo -e "Starte benötigte Dienste, und Verbindungen ...\n"
   sleep $configdelay

sleep $configdelay

  echo "Starte statische LAN-Konfiguration ..."
   /sbin/ifconfig $laniface down
    /sbin/ifconfig $laniface $laddress broadcast $lbroadcast netmask $lnetmask
     sleep $configdelay
      /sbin/ifconfig $laniface up

## vorhandene Route ggf. löschen
 echo "Lösche Default-Gateway ..."
  defgw="`route -n | grep UG | awk {'print $2'}`"
   /sbin/route del default gw $defgw $laniface

echo
 echo "Setze Gateway und Route ..."
  /sbin/route add default gw $lgateway $laniface
   sleep $configdelay

## dnsmasq starten
echo "Starte dnsmasq"
 echo -e "DHCP-Range dnsmasq-base - Startadresse: $startaddr Endadresse: $endaddr\n"

 /usr/sbin/dnsmasq -i $laniface -F $startaddr,$endaddr,$leasetime

## Ausgabe der Konfiguration. Einstellungen der Schnittstellen,
## Routingtabelle und DNS prüfen

echo "Aktuelle Konfiguration ..."

 echo -e "Systemkonfiguration: /etc/resolv.conf\n"
  /bin/cat /etc/resolv.conf

 echo -e "Systemkonfiguration: Routingtabelle\n"
  /sbin/route -n

 echo "Konfiguration LAN:"
  /sbin/ifconfig $laniface | egrep 'Link|inet Adresse'

echo -e "Basiskonfiguration abgeschlossen.\n"
 echo "Netzwerkkabel an Windows-Rechner anschließen."
  exit 0

Ausführen/beenden:

./linklocal.sh -start
./linklocal.sh -stop 

Mit bestehender Internetverbindung zuvor Freigaben unter Ubuntu anlegen:

  • öffne einfach Nautilus

  • → Rechtsklick z.B. auf den Ordner „Öffentlich“

  • → „Freigabeoptionen“ wählen, aktivieren und durch den Installationsdialog hangeln

  • → Sitzung neu starten (abmelden, neu anmelden), fertig

  • das Skript starten

  • Kabelverbindung zum Windows-Rechner herstellen

  • unter Windows im Dateiexplorer unter „Netzwerk“ auf den nun angezeigten Ubuntu/Linux-Rechner klicken mit dem Benutzernamen des Ubuntu-Systems und dessen Kennwort anmelden

  • Freigaben werden sichtbar

jl4jsjsjyjw8sl

(Themenstarter)
Avatar von jl4jsjsjyjw8sl

Anmeldungsdatum:
28. Mai 2010

Beiträge: 391

Das mit dem DHCP-Server ist echt genial! - vielen Dank.

elektronenblitz63

Avatar von elektronenblitz63

Anmeldungsdatum:
16. Januar 2007

Beiträge: 29307

Wohnort: NRW

Prima ☺

Ich verlinke das mal im Wiki-Artikel.

lilalola

Anmeldungsdatum:
7. März 2014

Beiträge: 125

Hallo,

ich möchte mit Hilfe des Skripts von meinem Ubuntu-Rechner aus auf Dateien zugreifen, die sich auf einem Rechner mit Windows XP befinden. Leider klappt das nicht. Die Rechner sind über Ethernetkabel mit CrossOver-Adapter verbunden.

unter Windows im Dateiexplorer unter „Netzwerk“ auf den nun angezeigten Ubuntu/Linux-Rechner klicken mit dem Benutzernamen des Ubuntu-Systems und dessen Kennwort anmelden

Bei mir gibts im Windows Explorer nur "Netzwerkumgebung". Da erscheint leider auch kein Ubuntu/Linux-Rechner.

Muss ich auf dem Windows-Rechner noch irgendwas einstellen?

Mit freundlichen Grüßen

elektronenblitz63

Avatar von elektronenblitz63

Anmeldungsdatum:
16. Januar 2007

Beiträge: 29307

Wohnort: NRW

Hallo,

  • sind bereits Freigaben auf dem Linux-Rechner über Samba eingerichtet, so wie oben beschrieben?

  • läuft das Skript?

  • wurde die passende Schnittstelle des Linux-Rechner konfiguriert?

  • wurde dem Windows-System eine IP-Adresse zugewiesen?

lilalola

Anmeldungsdatum:
7. März 2014

Beiträge: 125

Hallo,

sind bereits Freigaben auf dem Linux-Rechner über Samba eingerichtet, so wie oben beschrieben?

nein. Wie mache ich das?

  • Wäre es sinnvoll, dazu das Paket "swat" (Samba Web-Administrations-Werkzeug) zu installieren?

  • Kann ich die Verbindung damit manuell einrichten?

elektronenblitz63

Avatar von elektronenblitz63

Anmeldungsdatum:
16. Januar 2007

Beiträge: 29307

Wohnort: NRW

lilalola schrieb:

Hallo,

sind bereits Freigaben auf dem Linux-Rechner über Samba eingerichtet, so wie oben beschrieben?

nein. Wie mache ich das?

Das steht oben.

  • Wäre es sinnvoll, dazu das Paket "swat" (Samba Web-Administrations-Werkzeug) zu installieren?

Nein.

  • Kann ich die Verbindung damit manuell einrichten?

Nein.

lilalola

Anmeldungsdatum:
7. März 2014

Beiträge: 125

Hallo,

oben steht nichts von Samba. Ich habe versucht, ab "Skript anlegen und ausführbar machen" alles so zu machen, wie es da steht. Wie kann ich denn mit Samba die Verbindung manuell einrichten, so dass sie mir im Netzwerkindikator des Unity-Panel separat angezeigt wird?

elektronenblitz63

Avatar von elektronenblitz63

Anmeldungsdatum:
16. Januar 2007

Beiträge: 29307

Wohnort: NRW

Da steht :

Mit bestehender Internetverbindung zuvor Freigaben unter Ubuntu anlegen:

Das installiert die erforderlichen Pakete.

lilalola

Anmeldungsdatum:
7. März 2014

Beiträge: 125

Hallo,

wie installiere ich die Verbindung manuell ohne das Skript? Wie kann ich die Änderungen, die das Skript eventuell gemacht hat, rückgängig machen?

elektronenblitz63

Avatar von elektronenblitz63

Anmeldungsdatum:
16. Januar 2007

Beiträge: 29307

Wohnort: NRW

Hallo,
das steht alles in den beiden ersten Beiträgen, weshalb ich das hier nicht alles erneut wiederhole.

  • lies dir das noch mal in Ruhe durch und beachte die Wiki-Links.

  • für das Skript gibt es einen Start- und einen Stopp-Befehl, danach ist die Konfiguration wieder so wie sie vorher war

  • dann solltest Du bei Problemen schon genau fragen an welcher Stelle was nicht funktioniert

lilalola

Anmeldungsdatum:
7. März 2014

Beiträge: 125

Hallo,

ein Problem war, dass ich notwendige Dienste auf dem Windowsrechner abgeschaltet hatte.

sind bereits Freigaben auf dem Linux-Rechner über Samba eingerichtet, so wie oben beschrieben?

Ich habe das so gemacht wie oben beschrieben und damit, wie ich annehme, den Ordner "Öffentlich" freigegeben.

läuft das Skript?

Das scheint der Fall zu sein. Es gibt im Terminal alle möglichen Meldungen, u.a. auch sowas wie eine Fehlermeldung:

Lösche Default-Gateway ...
eth0: Unbekannter Rechner

Setze Gateway und Route ...
SIOCADDRT: Das Argument ist ungültig

Während das Skript läuft, erhalte ich von Windows über den Status der LAN-Verbindung die Meldung:

"Eingeschränkte oder keine Konnektivität
Es besteht eventuell keine Verbindung zum Internet oder einigen Netzwerkressourcen.
Das Problem ist aufgetreten, weil das Netzwerk diesem Computer keine Netzwerkadresse zugewiesen hat."

wurde dem Windows-System eine IP-Adresse zugewiesen?

Ja, was im Widerspruch zur Meldung in Windows steht. Die IP-Adresse fängt mit "169.254." an, was ich mir nicht erklären kann. Im Skript steht doch "192.168.". Auch die Subnetzmaske "255.255.0.0" verstehe ich nicht. Muss die nicht auf beiden Rechnern gleich sein? Im Skript steht doch "255.255.255.0".

wurde die passende Schnittstelle des Linux-Rechner konfiguriert?

Ich habe in den Netzwerkverbindungen eine Verbindung unter "Kabelgebunden" angelegt. Hinter "MAC-Adresse des Gerätes" war eine vorgegeben. Die habe ich übernommen. Unter IPv4-Einstellungen habe ich "Automatisch (DHCP)" ausgewählt. Mehr habe ich nicht eingestellt.

  • Wie konfiguriere ich in die Netzwerkverbindung von Ubuntu richtig und wie die auf dem Windowsrechner?

Irgendwas muss ja falsch eingestellt sein. Die verlinkten Seiten habe ich gelesen.

Ich hoffe weiterhin auf Hilfe...

Freundliche Grüße

elektronenblitz63

Avatar von elektronenblitz63

Anmeldungsdatum:
16. Januar 2007

Beiträge: 29307

Wohnort: NRW

Während das Skript läuft, erhalte ich von Windows über den Status der LAN-Verbindung die Meldung "Eingeschränkte Konnektivität..."

Auch ok, Internetzugang besteht ja auch nicht. Die IP-Adresse wird in der Verbindungsübersicht angezeigt

→ Rechtsklick auf das Netzwerk-Icon im Systray - „Details“ - oben unter dem zweiten Reiter wird die IP-Konfiguration angezeigt

Das ist soweit alles ok.

Ich habe in den Netzwerkverbindungen eine Verbindung unter "Kabelgebunden" angelegt.

Das ist unnötig, der Manager wird durch das Skript ja abgeschaltet.

Ob die Linux-Schnittstelle richtig konfiguriert ist, weiß ich nicht.

Das Skript gibt am Ende die Konfiguration aus. Bitte mal zeigen

Möglicherweise musst Du unter Windows noch die Arbeitsgrupope in „WORKGROUP“ ändern, sollte nach spätestens einer Minute immer noch keine Freigaben unter „Netwerkverbindungen“ im Explorer auftauchen.

lilalola

Anmeldungsdatum:
7. März 2014

Beiträge: 125

Hallo, vielen Dank

dann probiere ich das mal. Ich hatte hier etwas übersehen.

Antworten |