Avatar billede pablopablo Nybegynder
13. januar 2006 - 00:42 Der er 5 kommentarer og
1 løsning

Find IP på en direkte forbundet computer

Hejsa...

Jeg har et program, som skal udviddes således, at det også kan sende data via netværket...har studeret mulighederne i C# - og det er jo faktisk ret simpelt at kode!
Jeg har dog et spg. - trods alt :)

Mit spg. tager udgangspunkt i, at det skal være SÅ SIMPELT som overhovedet muligt, for brugeren at opsætte/konfigurere...

Hvis den computer hvorpå mit program kører, ikke er på internettet - men direkte forbundet til en anden computer(serveren)...(dvs. IKKE via en swicht/hub/router eller lign.) er der så en let måde at finde IP og port nr. serveren computeren på?

Computeren hvorpå mit program kører (klienten) skal blot kunne sende data til serveren...meget simpelt...
For at få forbindelse til serveren skal jeg jo angive IP og port nr...og det er her jeg er lidt i tvivl...

Hvis jeg havde et domæne eller et netværksnavn på computeren eller en MAC adr. så kunne jeg finde/forespørge efter IP på netværket (via bla. ARP)...

Det er måske nødvendigt, for brugeren manuelt at finde IP og port på serveren-computeren og indtaste informationer manuelt i klient programmet...eller?

Håber meget i kan hjælpe mig på vej!

Mvh. PabloPablo
Avatar billede Slettet bruger
13. januar 2006 - 07:11 #1
Klienterne skal som udgangspunkt kende serveren og porten for at kunne lave en forbindelse. Om ikke andet skal du som minimum lægge dig fast på en port.

Så er der den lidt mere spændende løsning som egentligt kun krævet at du kender et portnummer. Dit serverprogram skal lytte efter UDP pakker på en given port. Dine klienter sender et broadcast (og hold det nu på dit eget subnet) og din server svare tilbage hvilken IP den har og hvilken port den vil kommunikerer på. Herefter kan din klient lave den endelige forbindelse.

Egentligt er det vel lettere om der bare er et setup i dit klient program hvor man angiver adresse og eventuelt port på serveren.
Avatar billede pablopablo Nybegynder
13. januar 2006 - 13:15 #2
Det er ikke mig som laver serveren - koder kun klienten...og det kører TCP...havde blot håbet på, at der var en smart/speciel måde, at finde IP/port på server-computeren fra klienten - nu hvor de er koblet direkte sammen...
Avatar billede spif2001 Nybegynder
13. januar 2006 - 14:21 #3
ved ikke om det her kan hjælpe, men hvis du kender DNS navnet:

System.Net.IPHostEntry hostEntry = System.Net.Dns.GetHostByName(System.Net.Dns.GetHostName());
            this.comboBoxIPs.Text = hostEntry.AddressList.GetValue(0).ToString();
            foreach(IPAddress adr in hostEntry.AddressList)
                this.comboBoxIPs.Items.Add(adr.ToString());


Brugte det til at finde lokale adresser på min maskine, men du kan jo skifte dns navnet ud... måske :)
Avatar billede pablopablo Nybegynder
13. januar 2006 - 14:24 #4
spif>> Som jeg skrev tidligere, har klienten ikke adgang til internettet...men kun til serveren selv...
Avatar billede spif2001 Nybegynder
13. januar 2006 - 14:30 #5
ah - sorry - så er jeg ude....
Avatar billede pablopablo Nybegynder
13. januar 2006 - 23:07 #6
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB