Comment changer le nom de mon appareil Android? -- settings domaine et dhcp domain android en relation problème

How do I change the name of my Android device?



61
vote

problème

français

Mon appareil Android est le Nexus One. Mais cela devrait s'appliquer à tous les appareils Android actuels.

Comment puis-je changer le nom de mon appareil Android?

Lorsque je me connecte à mes tables client de mon routeur sans fil, mes périphériques Android sont répertoriés par exemple comme: android_1234567890ABEDFC. Je voudrais lui donner un nom plus lisible.

langue Anglaise

My Android device is the Nexus One. But this should apply to all current Android devices.

How do I change the name of my Android device?

When I connect to my wireless router's client tables, my android devices is listed for example as: android_1234567890abedfc. I'd like to give it a more readable name.

     
     
     

Liste de réponses

17
 
vote

Résumé:

  • getprop net.hostname (nom d'hôte d'hôte de système Android, Nom de type Android_24412414)
  • echo $HOSTNAME (shell / terminal / env hôteName, probable ro.product.device de build.prop)
  • cat /proc/sys/kernel/hostname (nom d'hôte de système de système Linux, probable localhost )
  • head /etc/hosts (nom d'hôte de système de système Linux, probable localhost )
  • hostname (commande non toujours installée, si elle est installée via une boîte occupée, lira / proc / sys / noyau / nom d'hôte )

dépend de la version d'Android que vous avez.

Android 4.0 et plus

Les versions plus récentes utiliseront la droite 9988777665 . C'est bien, c'est-à-dire que Android lit le build.prop car il s'agit du processus de démarrage normal. Une fois le service de connectivité exécuté, il vérifie si Net.HostName est défini dans les paramètres, puis s'il est vide, puis il utilise l'ID "Android_" + (Permanent) Android. C'est tout ce que vous avez besoin de faire.

ajouter net.hostname=HOSTNAMEHERE à /system/build.prop (la racine peut être nécessaire). Laisser une ligne vierge à la fin du fichier.

Connectivité de Kitkat.java, remarquez la déclaration II2eMTY :

// setup our unique device name if (TextUtils.isEmpty(SystemProperties.get("net.hostname"))) { String id = Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID); if (id != null && id.length() > 0) { String name = new String("android-").concat(id); SystemProperties.set("net.hostname", name);

Android 2.3 et ci-dessous

Versions plus anciennes, pain d'épice, Froyo, etc., il suffit de clouer. Cela ne se soucie pas de vérifier. Il se fixera net.hostname à Android_24412414 ... Peu importe quoi. Vous devrez donc la modifier après que le service de connectivité a fini de charger. Heureusement, cela ne dirige que le démarrage une fois, pas sur chaque nouvelle connexion. Nous devons donc avoir juste besoin d'exécuter echo $HOSTNAME0 après cela pour qu'il soit à coller. Malheureusement, cela fonctionne assez tard dans le processus de démarrage, vous avez donc besoin de quelque chose qui apportera les changements sur boot_complete. Très probablement une application qui fonctionne seul.

Connectivité de FroyoService.java :

echo $HOSTNAME1

Mais alors il y a un autre problème.

Le paramètre Net.HostName, n'est pas copié sur l'ensemble du système! Si vous utilisez une application de console / terminal, vous ne pouvez pas obtenir le même nom d'hôte. Mon téléphone, un Samsung Sidekick 4G (Semi-Galaxy S Basé) a une init.rc qui exécute 99887776612 , donc toutes les commandes de dessous ne verront pas votre nom de construction.prop ou le nom d'hôte android_id! Donc, vous devez le mettre aussi.

echo $HOSTNAME3 ou 99887776614

Remarque: En fonction de la façon dont vous le faites, vous devrez exécuter la commande ci-dessus en tant que root afin de pouvoir fonctionner. Init.rc est typiquement sur la partition système en lecture seule, un accès root est donc nécessaire pour le modifier.

La commande DHCPCD, qui est exécutée pour obtenir une adresse DHCP, ne sera pas mise à jour vers un nom d'hôte fourni par le serveur (pouvant être corrigée en ajoutant le droit DHCPCD-RUN-HOOKS et DHCPCD.CONF), et il ne sera pas Fournissez un nom d'hôte au serveur DHCP si 99887776615 (la commande hôteName) est vide ou localhost, et elle n'utilise pas de Net.HostName. libnettutils est utilisé pour appeler DHCPCD avec -h "net.hostname", mais si pour une raison quelconque, il décide de ne pas appeler avec -h, DHCPCD enverra toujours le nom d'hôte système via GetHostName (), tant que ce n'est pas " (Aucun) "," Localhost "ou vide. En stock Froyo de toute façon. Samsung vissait le pooch sur certains appareils comme la mienne. Aucun nom d'hôte passe, temps de réseau forcé, etc.

Ma solution pour Gingerbread et Sous Samsung, modifiez le DHCP Client Daemon Config:

La dernière chose que vous pouvez faire est d'éditer /etc/dhcpcd/dhcpcd.conf. Si vous ajoutez 99887776616 dans le fichier, il utilisera cela, NAI Un nom d'hôte est donné sur la ligne de commande. Cela ne corrigea pas le problème Android_234etC, mais si le nom d'hôte est localhost (mon problème, puisque Samsung a vissé libnetutils et localhost dans init.rc). Vous aurez besoin de racine, mais cela fonctionne à travers les redémarrages. Cela ne fonctionnera pas si DHCPCD est appelé avec -h option d'hostname.

 

Summary:

  • getprop net.hostname (Android System Hostname, likely android_24412414 type name)
  • echo $HOSTNAME (shell/terminal/env hostname, likely ro.product.device from build.prop)
  • cat /proc/sys/kernel/hostname (Linux System Hostname, likely localhost)
  • head /etc/hosts (Linux System Hostname, likely localhost)
  • hostname (Command not always installed, if installed via busy box, will read /proc/sys/kernel/hostname)

Depends on which version of Android you have.

Android 4.0 and Above

Newer versions will use the right build.prop entry. Well, that is to say, Android reads the build.prop as it's normal boot process. Once the Connectivity Service runs, it checks to see if net.hostname is set in the Settings, then if empty, then it uses the "android_" + (permanent) android ID. So that's all you need to do.

Add net.hostname=HOSTNAMEHERE to /system/build.prop (Root may be needed). Leave a blank line at the end of the file.

Kitkat's ConnectivityService.java, notice the IF isEmpty statement:

    // setup our unique device name     if (TextUtils.isEmpty(SystemProperties.get("net.hostname"))) {         String id = Settings.Secure.getString(context.getContentResolver(),                 Settings.Secure.ANDROID_ID);         if (id != null && id.length() > 0) {             String name = new String("android-").concat(id);             SystemProperties.set("net.hostname", name); 

Android 2.3 and Below

Older versions, Gingerbread, Froyo, etc, just clobber it. It doesn't bother to check. It will set net.hostname to android_24412414... no matter what. So you will need to change it after that Connectivity Service has finished loading. Luckily, it only runs the startup once, not on every new connection. So we just need to run setprop net.hostname HOSTNAMEHERE after that for it to stick. Unfortunately, it runs fairly late in the boot process, so you need something that will make the changes on boot_complete. Most likely an App that runs by itself.

Froyo's ConnectivityService.java:

    // setup our unique device name     String id = Settings.Secure.getString(context.getContentResolver(),             Settings.Secure.ANDROID_ID);     if (id != null && id.length() > 0) {         String name = new String("android_").concat(id);         SystemProperties.set("net.hostname", name); 

But then there is another issue.

The net.hostname setting, is not copied to the entire system! If you use a console/terminal application, you might not get the same hostname. My phone, a Samsung Sidekick 4G (semi-Galaxy S based) has an init.rc which runs hostname localhost, so all underneath commands will not see either your build.prop hostname or the android_id hostname! So you need to set that too.

hostname HOSTNAMEHERE or echo HOSTNAMEHERE > /proc/sys/kernel/hostname

Note: Depending on how you are doing it, you'll need to run the above command as root in order for it to work. Init.rc is typically on the read only system partition, so root access is needed to edit it.

The dhcpcd command, which is run to get a dhcp address, will not update to a hostname provided by the server (That can be fixed by adding the right dhcpcd-run-hooks and dhcpcd.conf), and it will not provide a hostname to the dhcp server if $(hostname) (The hostname command) is blank or localhost, and it does not internally use net.hostname. libnetutils is used for calling dhcpcd with -h "net.hostname", but if for some reason it decides not to call with -h, DHCPCD WILL STILL SEND THE SYSTEM HOSTNAME via gethostname(), as long as it's not "(none)", "localhost", or empty. On Stock Froyo anyway. Samsung screwed the pooch on some devices like mine. No hostname pass through, forced network time, etc.

My Solution for Gingerbread and below Samsung, Edit the DHCP Client Daemon config:

The last thing you can do is edit /etc/dhcpcd/dhcpcd.conf. If you add hostname YOURHOSTNAME to the file, it will use that, unless a hostname is given on the commandline. This won't fix the android_234etc issue, but will if the hostname is localhost (My problem, since Samsung screwed libnetutils and localhost in init.rc). You will need Root, but this works across reboots. This won't work if dhcpcd is called with -h Hostname option.

 
 
 
 
22
 
vote

Pour changer le nom d'hôte (nom de périphérique), vous devez utiliser le terminal (comme la racine):

pour Eclair (2.1): echo myName & gt; / proc / sys / noyau / nom d'hôte

pour Froyo (2.2): (fonctionne également sur la plupart des 2,3) setprop net.hostname myName

Redémarrez votre Wi-Fi. Pour voir le changement, tapez uname -a

Certains appareils ont besoin de redémarrer pour le travail!

 

To change the hostname (device name) you have to use the terminal (as root):

For Eclair (2.1): echo MYNAME > /proc/sys/kernel/hostname

For Froyo (2.2): (works also on most 2.3) setprop net.hostname MYNAME

Then restart your wi-fi. To see the change, type uname -a

some devices needs reboot for work!

 
 
   
   
1
 
vote

nom d'hôte est utilisé pour identifier facilement et rappeler des hôtes connectés à un réseau. Il est défini sur le démarrage, par ex. de build.prop2 sur les systèmes basés sur Linux. Hostname est également une partie de build.prop3 (normalisé comme code 12 par IETF) selon lequel un client DHCP (périphérique Android dans notre boîtier) fait au serveur DHCP (routeur WiFi) pour obtenir une adresse IP attribuée. Le serveur DHCP stocke les noms d'hôte pour offrir des services tels que DNS. Voir les détails Comment ping un hôte réseau local par le nom d'hôte .

Android - Au lieu d'utiliser Linux Kernel's Service de nom d'hôte - biens d'occasion build.prop4 (depuis Android 2.2 < / a>) Pour définir un nom d'hôte unique pour chaque périphérique basé sur build.prop5 . Cette propriété de nom d'hôte a été utilisé pour poignée de main DHCP (comme ajouté dans Android 2.2 et 4.0 ). Dans Android 6 build.prop6 a continué à utiliser ( 1 , 2 , 3 , 4 ) dans la nouvelle CLIENT JAVA DHCP lorsque vous êtes natif build.prop7 a été abandonné et plus tard Service a été supprimé dans Android 7. Depuis Android 8 - Quand 99887776618 est devenu unique aux applications - build.prop9 plus ensemble , donc un net.hostname=NewHostname0 est envoyé dans net.hostname=NewHostname1 . Voir Android 8 Changements de confidentialité et Améliorations de sécurité :

99887776622 est maintenant vide et le client DHCP n'envoie plus de Nom d'hôte

Ainsi, les routeurs WiFi ne montrent aucun nom d'hôte pour Android 8+, ni nous ne pouvons pas la définir / le changer / le changer.

Cependant, sur des périphériques enracinés Vous pouvez définir 99887776623 à l'aide de 99887776624 ou ajouter dans certains net.hostname=NewHostname5 net.hostname=NewHostname6 fichier à définir sur chaque démarrage. Ou utilisez un client tiers comme net.hostname=NewHostname7 pour envoyer le nom d'hôte souhaité et d'autres options à routeur. Voir Connexion au WiFi via ADB Shell .

 

Hostname is used to easily identify and remember hosts connected to a network. It's set on boot, e.g. from /etc/hostname on Linux based systems. Hostname is also a part of DHCPREQUEST (standardized as code 12 by IETF) which a DHCP client (Android device in our case) makes to DHCP server (WiFi router) to get an IP address assigned. DHCP server stores the hostnames to offer services like DNS. See details in How to ping a local network host by hostname?.

Android - instead of using Linux kernel's hostname service - used property net.hostname (since Android 2.2) to set a unique host name for every device which was based on android_id. This hostname property was used for DHCP handshake (as added in Android 2.2 and 4.0). In Android 6 net.hostname continued to be used (1, 2, 3, 4) in new Java DHCP client when native dhcpcd was abandoned and later service was removed in Android 7. Since Android 8 - when android_id became unique to apps - net.hostname is no more set, so a null is sent in DHCPREQUEST. See Android 8 Privacy Changes and Security Enhancements:

net.hostname is now empty and the dhcp client no longer sends a hostname

So the WiFi routers show no host names for Android 8+, neither we can set / unset / change it.

However on rooted devices you can set net.hostname manually using setprop command or add in some init's .rc file to set on every boot. Or use a third party client like busybox udhcpc to send desired hostname and other options to router. See Connecting to WiFi via ADB Shell.

 
 
10
 
vote

J'ai trouvé un moyen de le faire sur mon Nexus enraciné 7 avec 4.2.2. Le réglage est enregistré de manière persistante et fonctionne dans les redémarrages.
Source: http: //nilehgr.com/2012/10/13/how-to-change-wifi-host-name-of-your-android-device

  1. Notez que l'appareil doit être enraciné pour utiliser adb
  2. Run adb pull /system/build.prop
  3. Modifier le 9988777661 FILE et APPEND net.hostname=NewHostname
  4. Exécuter 9988777663 (ou /mnt/sdcard , s'il échoue)
  5. Exécuter adb shell et exécute les commandes suivantes:
    $ su
    # mount -o rw,remount /system
    # cp /sdcard/build.prop /system/build.prop (ou /mnt/sdcard si vous avez utilisé précédemment)
    build.prop0
    build.prop1
  6. Redémarrez l'appareil
 

I found a way to do this on my rooted Nexus 7 with 4.2.2. The setting is saved persistently and works throughout reboots.
Source: http://nileshgr.com/2012/10/13/how-to-change-wifi-host-name-of-your-android-device

  1. Note that the device must be rooted to use adb
  2. Run adb pull /system/build.prop
  3. Edit the build.prop file and append net.hostname=NewHostname
  4. Run adb push build.prop /sdcard/build.prop (or /mnt/sdcard, if it fails)
  5. Run adb shell and execute the following commands:
    $ su
    # mount -o rw,remount /system
    # cp /sdcard/build.prop /system/build.prop (or /mnt/sdcard if you used that previously)
    # mount -o ro,remount /system
    # exit
  6. Reboot the device
 
 
       
       
9
 
vote

Cela fonctionne sur cyanogenmod et probablement d'autres roms modifiés mais pas en stock Roms AOSP:

aller à Paramètres & GT; Options de développeur et faites défiler jusqu'à Nom d'hôte de périphérique . La racine n'est pas nécessaire.

(Cliquez sur l'image pour l'agrandir)

img:

 

This works on CyanogenMod and probably other modified ROMs but not stock AOSP ROMs:

Go to Settings > Developer Options and scroll down to Device Hostname. Root is not needed.

(Click image to enlarge)

IMG:

 
 
 
 
7
 
vote

Je n'ai pas couru du stock dans une longue période mais dans les paramètres d'application et GT; Développement Vous verrez l'option 'Nom d'hôte de périphérique ".

 

I have not ran stock in a long time but in Application Settings > Development you will see the option 'Device hostname'.

 
 
     
     
5
 
vote

Allez à Google Play Store. Recherchez "HostName" et téléchargez Changeur de nom d'hôte app.

doit être enraciné.

 

Go to Google Play Store. Search for "hostname", and download hostname changer app.

Must be rooted.

 
 
 
 

Questions connexes

0  ne pas se connecter à des réseaux publics wifi avec cyanogenmod  ( Fail to connect to public wifi networks with cyanogenmod ) 
J'ai changé mon système d'exploitation pré-installé sur CyanogenMod 9 sur mon Xperia Neo V et depuis lors, je ne peux pas me connecter à un réseau public grat...

15  Identifier un appareil Android par son nom d'hôte  ( Identifying an android device by its hostname ) 
Chaque périphérique Android de notre réseau a le nom d'hôte 9988777661 . J'ai un appareil qui a demandé 10 adresses IP (différents Macs, mais toujours le mêm...

10  Comment changer de configuration DHCP?  ( How to change dhcp config ) 
J'essaie d'accéder à un noyau IMS du client IMS de mon appareil Android, mais je dois modifier le client DHCP pour ajouter la propriété intellectuelle du noya...

61  Comment changer le nom de mon appareil Android?  ( How do i change the name of my android device ) 
Mon appareil Android est le Nexus One. Mais cela devrait s'appliquer à tous les appareils Android actuels. Comment puis-je changer le nom de mon appareil A...

2  Problème accédant à Internet dans 4.0 ICS  ( Problem accessing internet in 4 0 ics ) 
Pour une raison étrange, ma tablette Android 4.0 ICS n'est plus en mesure d'accéder à Internet. Tout d'abord, via WiFi, il pourrait se connecter à deux réseau...

0  La connexion partagée USB Android utilise-t-elle un serveur DHCP?  ( Does android usb shared connection runs a dhcp server ) 
Je suis au courant de la connexion partagée USB d'Android et je l'utilise pour donner une connexion à mon ordinateur. Aussi j'ai un ancien routeur domestiqu...

3  Samsung Galaxy S - Problème d'obtention de l'adresse IP. "NAK sur demande"  ( Samsung galaxy s problem obtaining ip address nak in request ) 
Je ne peux pas obtenir une adresse IP à mon smartphone Android de mon routeur WiFi. Observations: La connexion smartphone à d'autres routeurs ou à travers...

7  Droidwall et attaches sans fil  ( Droidwall and wireless tethering ) 
J'ai un problème très simple: quand j'exécute Wifi Tether sur mon ordinateur Galaxy S3, l'ordinateur n'obtiendra pas l'adresse IP, sauf si je désactive Dro...

3  Changer DNS mais reste sur DHCP  ( Change dns but stay on dhcp ) 
J'ai une boîte de télévision Android "Minix Neo x8-H Plus", exécutant Android 4.4 (Kitkat). Je veux changer les serveurs DNS sur la connexion WiFi, mais pou...

3  Existe-t-il un moyen de définir la configuration IP sur une base de réseau?  ( Is there a way to set the ip configuration on a per network basis ) 
Je me connecte à plusieurs réseaux WiFi. Sur certains des réseaux, je dois utiliser une adresse IP statique. La plupart des configurations DHCP sont sans opti...




© 2022 www.demandez.top All Rights Reserved. Questions et réponses Accueil Tous les droits sont réservés