JohnL Δημοσ. 25 Σεπτεμβρίου 2007 Share Δημοσ. 25 Σεπτεμβρίου 2007 Εγκαθιστώντας linux, είδα ότι αυτό δεν κάνει resolve τα ονόματα των Windows PC ως hostnames, αντίθετα με τα άλλα Windows, που δίνοντας π.χ. ping server, αναγνωρίζει ότι το PC server βρίσκεται στην 192.168.1.10 και το pingάρει κανονικά. Να υποθέσω ότι αυτό είναι κάποια "πατέντα" της Microsoft? Ποιός είναι ο σωστός τρόπος να γίνει ώστε να φάινεται και από linux, όπως και να φαίνονται τα ονοματα των linux PC σε Windows PC? Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
pinball_elf Δημοσ. 25 Σεπτεμβρίου 2007 Share Δημοσ. 25 Σεπτεμβρίου 2007 Το μεγαλύτερο ποσοστό των λειτουργικών συστημάτων τύπου Linux/Unix δεν γνωρίζουν το hostname των υπολοίπων συστημάτων που βρίσκονται στο LAN εκτος και εαν τους το "πείς" εσυ. Συνήθως χρεάζονται μερικές επιπλέον γραμμές στο αρχείο /etc/hosts : > 192.168.1.1 node1 192.168.1.2 node2 για να μην έχεις πρόβλημα με network προγράμματα όπως το ping που για το destination μπορούν να πάρουν αντί για IP adress και το hostname. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
JohnL Δημοσ. 25 Σεπτεμβρίου 2007 Μέλος Share Δημοσ. 25 Σεπτεμβρίου 2007 Και το αντίστροφο? Τα windows pc να βλέπουν τα ονοματα των linux pc πώς γίνεται? Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
pinball_elf Δημοσ. 25 Σεπτεμβρίου 2007 Share Δημοσ. 25 Σεπτεμβρίου 2007 Νομίζω οτι ισχύει το ίδιο όπως και στο Unix/Linux, με τη διαφορά οτι το αρχείο λέγεται hosts.dat και βρισκεται ή πρέπει να υπάρχει στο c:\windows\system32\drivers\etc directory. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nske Δημοσ. 25 Σεπτεμβρίου 2007 Share Δημοσ. 25 Σεπτεμβρίου 2007 Να υποθέσω ότι αυτό είναι κάποια "πατέντα" της Microsoft? Ναι, απλά ο resolver των windows ελέγχει και τα NetBios names. Το NetBIOS σε καμία περίπτωση δεν είναι σωστή λύση για name resolution. Ποιός είναι ο σωστός τρόπος να γίνει ώστε να φάινεται και από linux, όπως και να φαίνονται τα ονοματα των linux PC σε Windows PC? Σε μικρά δίκτυα μπορείς να κάνεις αυτό που είπε ο pinball_elf. Σε μεγάλα δίκτυα ή σε δίκτυα που αλλάζουν τακτικά οι αντιστοιχίες ονομάτων-διευθύνσεων, ο σωστός τρόπος είναι μέσω DNS. Δηλαδή να στήσεις έναν DNS server και να ορίσεις σε όλα τα μηχανήματα του δικτύου να ρωτάνε αυτόν για το resolution. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
JohnL Δημοσ. 25 Σεπτεμβρίου 2007 Μέλος Share Δημοσ. 25 Σεπτεμβρίου 2007 a. Μπορώ κάπως να απενεργοποιήσω το να ελέγχει αυτά τα NetBios names? b. Έστησα ένα DNS Server σε Windows Server 2003. Γίνεται να ρυθμίσω τους υπολογιστές να στέλνουν κατευθείαν σε αυτόν το όνομά τους ώστε να ανανεώνεται η λίστα αυτόματα και όχι χειροκίνητα? Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nske Δημοσ. 26 Σεπτεμβρίου 2007 Share Δημοσ. 26 Σεπτεμβρίου 2007 a. Μπορώ κάπως να απενεργοποιήσω το να ελέγχει αυτά τα NetBios names? 1ο αποτέλεσμα του google για disabling+netbios: http://www.petri.co.il/disable_netbios_in_w2k_xp_2003.htm b. Έστησα ένα DNS Server σε Windows Server 2003. Γίνεται να ρυθμίσω τους υπολογιστές να στέλνουν κατευθείαν σε αυτόν το όνομά τους ώστε να ανανεώνεται η λίστα αυτόματα και όχι χειροκίνητα? Στο Linux το ορίζεις στο αρχείο /etc/resolv.conf. Π.χ. >nameserver 1.2.3.4 όπου 1.2.3.4 η διεύθυνση στην οποία ακούει ο DNS server. Στα windows ορίζεις τη διεύθυνση του DNS server στα properties του network interface. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
JohnL Δημοσ. 26 Σεπτεμβρίου 2007 Μέλος Share Δημοσ. 26 Σεπτεμβρίου 2007 a. ok, ξέχασα το google για λίγο b. Αυτό ξέρω πως γίνεται. Το αντίθετο με ενδιαφέρει πώς γίνεται... Δηλαδή, υποθετικά, σε ένα δίκτυο με πολλούς υπολογιστές δε γίνεται η λίστα των hosts να ανανεώνεται δυναμικά χωρίς να πρέπει ο administrator να την αλλάζει χειροκίνητα? Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nske Δημοσ. 26 Σεπτεμβρίου 2007 Share Δημοσ. 26 Σεπτεμβρίου 2007 εε, αναγκαστικά θα πρέπει να το περάσει ο administrator τα hostnames στον DNS server, αλλιώς από ποια πληροφορία θα μπορούσε να τα σκαρφιστεί μόνος του; Βέβαια, αν μιλούσαμε για server με λειτουργικό σαν το Linux και μπορούσες να σκεφτείς μια τέτοια πληροφορία, η οποία να υπάρχει κάπου, μοναδική για κάθε μηχάνημα, θα μπορούσε σχετικά εύκολα να αυτοματοποιηθεί η διαδικασία ώστε να εισάγονται hostnames στον DNS server, βασισμένα σε αυτή την πληροφορία. Όμως αφενός τα windows δεν είναι τόσο ευέλικτα και αφετέρου δε μπορώ να σκεφτώ καμιά τέτοια βολική πληροφορία που να υπάρχει έτοιμη σε ένα τυπικό δίκτυο (εκτός ξέρω γω αν θέλεις να παίρνεις το τελευταίο octet της IP διεύθυνσης κάθε host και να περνιούνται αυτόματα ονόματα με τη μορφή host123.domain, ή κάτι τέτοιο). Αλλά μπορεί να μην κατάλαβα τι έχεις στο μυαλό σου, αν θέλεις περίγραψε πώς ακριβώς το φαντάζεσαι και ποια βαβούρα θέλεις να αποφύγεις Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
JohnL Δημοσ. 26 Σεπτεμβρίου 2007 Μέλος Share Δημοσ. 26 Σεπτεμβρίου 2007 Το όνομα υπολογιστή τι χρησιμεύει τότε? Τόσο το linux (νομίζω) όσο και τα windows δεν έχουν τέτοια ρύθμιση? Βασικά η απορία μου δημιουργήθηκε επειδή ο DNS server των Windows 2003 αναφέρεται σε Dynamic Updates (screenshot συνημμένο). Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nske Δημοσ. 26 Σεπτεμβρίου 2007 Share Δημοσ. 26 Σεπτεμβρίου 2007 Όντώς, έχεις δίκιο, το τοπικό hostname μπορεί να χρησιμοποιηθεί! Όμως δεν έχω ασχοληθεί με τα Windows και δε ξέρω πώς θα μπορούσες να τραβήξεις και να στείλεις το τοπικό hostname τους εκεί που θέλεις. Στο Linux μπορείς εύκολα να πάρεις το hostname και να το κάνεις ό,τι θέλεις μέσα από το shell και τα εργαλεία του. Όμως δεν είμαι σίγουρος τι μέθοδο χρησιμοποιεί για τα dynamic updates ο MS DNS server, οπότε και πάλι δε ξέρω αν γίνεται να συνδεθείς στον microsoft server για να του στείλεις τα updates και πώς. Αν χρησιμοποιούσες έναν DNS server βασισμένο σε κάποιο γνωστό σύστημα βάσης (π.χ. LDAP, PostgreSQL, MySQL, κλπ) θα μπορούσες να κάνεις τις ανανεώσεις σου απευθείας με ένα απλό shell script το οποίο είτε θα εκτελούταν ανά τακτά διαστήματα από το crontab, ή όταν καλούταν η εντολή "hostname" ή "ifconfig" (οι οποίες χρησιμοποιούνται για να αλλάξει το τοπικό hostname και η ip address αντίστοιχα). Π.χ. για ένα τέτοιο setup για server που χρησιμοποιεί MySQL, θα μπορούσες να φτιάξεις ένα script, έστω αποθηκευμένο στο /usr/sbin/dns_update, κάπως έτσι: #!/bin/sh dbname=dns dbuser=user dbpass=password oldhostname=$(/usr/bin/mysql -u $dbuser -p$dbpass -h x.x.x.x -e "select name from dns.records WHERE content='1.2.3.4' \ AND type='A';"|sed -n "2p") hostname=$(hostname) oldaddress=$(/usr/bin/mysql -u $dbuser -p$dbpass -h x.x.x.x -e "select content from dns.records WHERE name='$hostname' \ AND type='A';"|sed -n "2p") address=$(/sbin/ifconfig eth0 | sed -n "2p" | sed -e "s/:/ /g" | awk '{print $3}') if [ "$1" == "hostname_change" ]; then if [ "$oldhostname" != "$hostname" ]; then /usr/bin/mysql -u $dbuser -p$dbpass -h x.x.x.x -e "update dns.records set name = '$hostname' WHERE content='1.2.3.4' AND type='A';"; fi elif [ "$1" == "address_change" ]; then if [ "$oldaddress" != "$address" ]; then /usr/bin/mysql -u $dbuser -p$dbpass -h x.x.x.x -e "update dns.records set content = '$hostname' WHERE name='$hostname' AND type='A';"; fi fi # chmod +x /usr/sbin/dns_update # echo "alias ifconfig='/usr/sbin/dns_update -ip_change'; ifconfig" >> /etc/profile # echo "alias ifconfig='/usr/sbin/dns_updater -hostname_change'; hostname" >> /etc/profile Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
JohnL Δημοσ. 26 Σεπτεμβρίου 2007 Μέλος Share Δημοσ. 26 Σεπτεμβρίου 2007 Wow! Όταν μάθω περισσότερα θα το δοκιμάσω Ευχαριστώ για τη βοήθεια και τους δύο! Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.