6 votes

Comment utiliser le partage d'écran si je ne connais pas l'adresse IP du Mac distant

J'ai les identifiants pour la Mac, mais il n'y a personne dans la pièce avec la machine pour vérifier l'adresse IP publique.

entrer la description de l'image ici

Si je connais l'adresse IP publique, je peux me connecter à la mac. Malheureusement, le fournisseur d'accès Internet fournit uniquement des adresses IP dynamiques, donc je suppose que cela a changé récemment.

Y a-t-il un autre moyen d'accéder?

3voto

Seamus Points 3171

Ah! Oui... vos options à ce stade sont limitées. Le FSI pourrait vous aider car c'est leur DHCP qui a assigné l'adresse ; ils seraient les seuls à le savoir.

Cela m'est déjà arrivé, et comme mon FSI est comcast, il n'y a pas d'aide.

A l' avenir :), ce dont vous avez besoin est le "Dynamic DNS"; disponible gratuitement auprès de plusieurs sources. J'utilise FreeDNS. C'est un peu bizarre, mais cela semble fonctionner de manière fiable.

L'autre alternative (au DNS dynamique) est une approche "faites-le vous-même" qui nécessiterait un peu d'écriture de script de votre part. Si vous êtes prêt pour cela, faites-le moi savoir et nous avancerons à partir de là.

2voto

wch1zpink Points 6067

Sur l'ordinateur distant, enregistrez le code AppleScript suivant dans un nouveau document Script Editor.App (Script Editor.App est situé ici... /Applications/Utilities/Script Editor.app) en tant qu'application "Stay Open". Avant d'enregistrer ce document en tant qu'application, assurez-vous d'entrer votre adresse IP externe actuelle et l'adresse e-mail dans les deux premières lignes du code.

Pour résumer ce que fait le code AppleScript est simplement... Toutes les 15 minutes, il vérifie votre adresse IP externe actuelle par rapport à l'adresse IP que vous avez définie dans la première ligne du code. Si ces deux adresses IP ne sont pas les mêmes, le script enverra un nouvel e-mail (à l'adresse e-mail que vous avez définie dans la deuxième ligne du code) avec la nouvelle adresse IP externe mise à jour.

Ensuite, tout comme pour l'ouverture de n'importe quelle autre application dans Finder, double-cliquer sur votre nouvelle application créée lancera la nouvelle application.

propriété adresseIP : "123.456.7.89" -- Insérez l'adresse IP externe actuelle (Définissez une fois seulement)

propriété destinataire : "quelquun@gmail.com" -- E-mail pour recevoir des messages de changement d'IP

sur inactif
    définir theIP à do shell script "curl ifconfig.co"

    si theIP n'est pas égal à adresseIP alors
        dire application "Mail"
            définir nouvelEmail à (créer un nouveau message sortant)
            définir le contenu du nouvelEmail à theIP
            définir le sujet du nouvelEmail à "L'adresse IP a changé"
            dire nouvelEmail
                faire un nouveau destinataire à avec des propriétés {adresse:destinataire}
                envoyer
            fin dire
        fin dire
        définir adresseIP à theIP
    fin si

    retourner (15 * minutes) -- Attends 15 minutes pour vérifier à nouveau l'IP
fin inactif

N'oubliez pas d'ajouter cette nouvelle application AppleScript, dans les Préférences Système, à la liste des applications autorisées à contrôler votre ordinateur.


MISE À JOUR

Bien que le script ci-dessus semble fonctionner, après plusieurs executions et de légers changements dans le code à des fins de test, j'ai décidé de créer une solution alternative. En raison des nouveaux paramètres de sécurité dans macOS Mojave et de l'incapacité d'AppleScript à mettre à jour de manière fiable et à maintenir ses valeurs de propriété globales et persistantes entre les exécutions, je pense que cette solution alternative est beaucoup plus fiable.

Étape 1: Sur l'ordinateur distant, dans Script Editor, enregistrez ce code AppleScript sous forme de fichier .scpt et nommez-le "Obtenir l'adresse IP externe actuelle.scpt"

Assurez-vous de changer la valeur de propriété destinataire par votre adresse e-mail

propriété adresseIP : "1.1.1.1" -- Pas nécessaire de définir
propriété destinataire : "VotreEmail@gmail.com" -- E-mail pour recevoir les messages de changement d'IP

définir emailEnCours à l'application "Mail" est en cours d'exécution -- Vérifie si Mail est en cours d'exécution

essayer
    définir dernierIPLogué à lireFichier()
    définir theIP à do shell script "curl ifconfig.co"
    si theIP n'est pas égal à dernierIPLogué alors
        envoyerNouvelEmail()
        écrireDansLeFichier()
    fin si
sur erreur errMsg number errNum
    si errNum est -43 then -- L'erreur si le fichier pour readFile() n'existe pas encore
        définir theIP à do shell script "curl ifconfig.co"
        si theIP n'est pas égal à adresseIP alors
            envoyerNouvelEmail()
            écrireDansLeFichier() -- Crée le fichier "/private/tmp/IP Logger.txt"
        fin si
    sinon
        activer
        afficher dialog "Une erreur s'est produite:" & retour & errMsg & " " & errNum abandonner après 10 secondes
    fin si
fin essayer

pause 20 -- Permet l'achèvement de tout message entrant ou sortant
si ce n'était pas emailEnCours alors quitter application "Mail" -- Quitte Mail s'il n'était pas déjà en cours d'exécution

À envoyerNouvelEmail() -- Envoie un nouvel e-mail à chaque changement d'IP
    définir theIP à do shell script "curl ifconfig.co"
    dire application "Mail"
        définir nouvelEmail à (créer un nouveau message sortant)
        définir le contenu du nouvelEmail à theIP
        définir le sujet du nouvelEmail à "L'adresse IP a changé"
        dire nouvelEmail
            faire un nouveau destinataire à avec des propriétés {adresse:destinataire}
            envoyer
        fin dire
    fin dire
    définir adresseIP à theIP
fin envoyerNouvelEmail

sur lireFichier() -- Lit IP Logger.txt pour vérifier les changements d'IP
    définir theFile1 à alias "private:tmp:IP Logger.txt"
    définir dernierIPLogué à dernier élément de (lire theFile1 comme texte en utilisant le délimiteur retour à la ligne)
fin lireFichier

sur écrireDansLeFichier() -- Journalise chaque changement d'IP dans un fichier
    définir theIP à do shell script "curl ifconfig.co"
    définir theFile à "/private/tmp/IP Logger.txt"
    définir leTexte à theIP
    essayer
        définir écrireDansFichier à ouvrir pour accès leFile avec la permission d'écriture
        écrire leTexte & retour à ligne vers writeFile comme texte en commençant à la fin du fichier
        fermer l'accès au fichier
    sur erreur errMsg nombre errNum
        fermer l'accès au fichier
        définir écrireDansFichier à ouvrir pour accès leFile avec la permission d'écriture
        écrire leTexte & retour à ligne vers writeFile comme texte en commençant à la fin du fichier
        fermer l'accès au fichier
    fin essayer
fin écrireDansLeFichier

Étape 2: Sur l'ordinateur distant, dans Script Editor, enregistrez ce code AppleScript suivant en tant que fichier d'application "Stay Open". Je l'ai nommé "Notifier par e-mail en cas de changement d'IP".

Si vous n'avez pas enregistré "Obtenir l'adresse IP externe actuelle.scpt" dans votre dossier Documents à l'étape 1 ci-dessus, vous devez alors définir son emplacement dans propriété currentExternalIP dans le code suivant.

propriété currentExternalIP : alias ((chemin vers le dossier documents en tant que texte) & "Obtenir l'adresse IP externe actuelle.scpt")

exécuter le script currentExternalIP

sur inactif
    exécuter le script currentExternalIP
    retourner (15 * minutes)
fin inactif

Lorsque vous exécutez pour la première fois la nouvelle application AppleScript Stay Open (Notifier par e-mail en cas de changement d'IP) en dehors de Script Editor, vous verrez le dialogue suivant...

entrez la description de l'image ici

Il suffit de cliquer sur "OK" et comme tout le travail est en fait réalisé par "Obtenir l'adresse IP externe actuelle.scpt", il ne devrait plus y avoir de futurs dialogues ou alertes à traiter.

Étape 3: (OPTIONNEL) Sur l'ordinateur distant, ajoutez cette nouvelle application AppleScript créée (Notifier par e-mail en cas de changement d'IP) à vos "Éléments de connexion" dans le panneau Préférences Système Utilisateurs et Groupes. Maintenant, à chaque redémarrage de l'ordinateur, Notifier par e-mail en cas de changement d'IP s'exécutera automatiquement et chaque fois que l'adresse IP externe de cet ordinateur changera, vous recevrez une notification par e-mail.

2voto

jpa Points 139

Le service de partage d'écran utilise le port TCP 5900. Si vous avez arrangé les choses de telle sorte que vous puissiez vous connecter à lui en ne connaissant que l'IP, ce port devrait apparaître comme ouvert de l'extérieur.

Maintenant, si vous savez quelle était l'adresse IP dynamique avant qu'elle ne change, vous pouvez vérifier la base de données WHOIS pour voir dans quelle plage IP cette adresse appartient. Il y a de fortes chances que la nouvelle IP appartienne à la même plage, bien que cela dépende totalement de la façon dont votre FAI attribue les adresses.

Ensuite, vous pourriez scanner tout ce sous-réseau en utilisant par exemple nmap, en recherchant le port 5900 ouvert. Mais avant de le faire, vérifiez la légalité du balayage de ports dans le pays où vous vous trouvez actuellement. Dans certains pays, cela est légal s'il est fait sans intention criminelle, dans d'autres pays, le balayage de ports peut être toujours illégal.

1voto

Nimesh Neema Points 44385

Si la personne sur l'autre Mac est connectée avec son identifiant Apple, vous pouvez simplement démarrer une session iMessage, cliquer sur le bouton Détails et cliquer sur l'icône de partage d'écran pour commencer une session de partage d'écran.

entrer la description de l'image ici

Vous pouvez leur demander de partager leur écran ou les inviter à partager le vôtre. Cette approche fonctionne de manière transparente sans avoir besoin d'une adresse IP explicite.

Cependant, vous aurez besoin que quelqu'un soit présent physiquement près de la machine pour approuver la demande de partage d'écran.

0voto

moodforaday Points 2633

Sans doute pas, surtout si le Mac est derrière un routeur, la plupart d'entre eux bloquent les connexions entrantes.

À l'avenir, je recommanderais d'utiliser quelque chose comme Screens ou Jump Desktop qui ont tous les deux des applications compagnon qui contourneront les différents problèmes de connexion et vous permettront de vous connecter à distance sans avoir besoin de connaître l'adresse IP.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X