Connect your Samsung S7 via usb to your favorite linux machine. Goto 'Settings -> Connections -> mobile hotspot and Tethering' and enable USB tethering.Android will now enable tethering with the Linux host and Linux should consequently acquire an IP address from the phone. This is where it is broken. The proper network setup is never done to allow any IP connection with the phone itself.The problem is that Samsung S7 send an invalid/broken Mac address: 00:00:00:00:00:00. And the Linux network stack does not operate with a 'zero' mac address at all. It seems that this issue was introduced with with Samsung S7 (android 6.x and 7.x). My previous phones Samsung S4 and S5 are tethering without a problem.I am running Fedora 24/25 with NetworkManager but any Linux will most likely expose the same issue.PS: tethering with Win7-64 worksifconfig -aenp0s20u4: flags=4098<BROADCAST,MULTICAST>  mtu 1500    ether 00:00:00:00:00:00  txqueuelen 1000  (Ethernet)    RX packets 0  bytes 0 (0.0 B)    RX errors 0  dropped 0  overruns 0  frame 0    TX packets 0  bytes 0 (0.0 B)    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0Mar  7 08:56:02 m3800 kernel: usb 1-4: New USB device found, idVendor=04e8, idProduct=6863Mar  7 08:56:02 m3800 kernel: usb 1-4: New USB device strings: Mfr=3, Product=4, SerialNumber=5Mar  7 08:56:02 m3800 kernel: usb 1-4: Product: SAMSUNG_AndroidMar  7 08:56:02 m3800 kernel: usb 1-4: Manufacturer: SAMSUNGMar  7 08:56:02 m3800 kernel: usb 1-4: SerialNumber: cexxxxxxxxxxxxxxxxMar  7 08:56:02 m3800 mtp-probe: checking bus 1, device 6: /sys/devices/pci0000:00/0000:00:14.0/usb1/1-4Mar  7 08:56:02 m3800 mtp-probe: bus: 1, device: 6 was not an MTP deviceMar  7 08:56:02 m3800 kernel: [  127.774244] usbcore: registered new     interface driver cdc_etherMar  7 08:56:02 m3800 kernel: usbcore: registered new interface driver cdc_etherMar  7 08:56:02 m3800 kernel: [  127.777443] rndis_host 1-4:1.0 eth0: register 'rndis_host' at usb-0000:00:14.0-4, RNDIS device, 00:00:00:00:00:00Mar  7 08:56:02 m3800 kernel: [  127.777466] usbcore: registered new interface driver rndis_hostMar  7 08:56:02 m3800 kernel: rndis_host 1-4:1.0 eth0: register 'rndis_host' at usb-0000:00:14.0-4, RNDIS device, 00:00:00:00:00:00Mar  7 08:56:02 m3800 kernel: usbcore: registered new interface driver rndis_hostMar  7 08:56:02 m3800 kernel: [  127.781049] rndis_host 1-4:1.0 enp0s20u4: renamed from eth0Mar  7 08:56:02 m3800 kernel: rndis_host 1-4:1.0 enp0s20u4: renamed from eth0Mar  7 08:56:02 m3800 NetworkManager[876]: <info>  (enp0s20u4): carrier is OFF                                                      Mar  7 08:56:02 m3800 NetworkManager[876]: <info>  (enp0s20u4): new Ethernet device (driver: 'rndis_host' ifindex: 3)               Mar  7 08:56:02 m3800 NetworkManager[876]: <info>  (enp0s20u4): exported as /org/freedesktop/NetworkManager/Devices/2               Mar  7 08:56:02 m3800 NetworkManager[876]: <info>  (enp0s20u4): device state change: unmanaged -> unavailable (reason 'managed') [10 20 2]                                                                                                                              Mar  7 08:56:02 m3800 NetworkManager[876]: <error> [1488905762.697751] [platform/nm-linux-platform.c:2278] link_change(): Netlink error changing link 3:  <UP> mtu 0 (1) driver 'rndis_host' udi '/sys/devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.0/net/enp0s20u4': Invalid address for specified address familyMar  7 08:56:02 m3800 NetworkManager[876]: <info>  (enp0s20u4): preparing deviceMar  7 08:56:02 m3800 NetworkManager[876]: <info>      read connection 'Wired connection 1'Mar  7 08:56:02 m3800 NetworkManager[876]: <info>  (enp0s20u4): created default wired connection 'Wired connection 1'
samsung S7 android fails to tether and not setting up network configuration
linux;usb;network interface;android;mac address