How to See Samba Shares on a Windows 10 Network

wsdd is a service by christgau on GitHub, which implements a Web Service Discovery host daemon for Ubuntu. This enables Samba hosts to be found by Web Service Discovery Clients like Windows 10.

If you are experiencing any issues with this service, please let us know in the comments or submit an issue on GitHub.

Change to /tmp directory.

cd /tmp

Download and unzip the archive.

wget https://github.com/christgau/wsdd/archive/master.zip

unzip master.zip

Rename wsdd.py to wsdd.

sudo mv wsdd-master/src/wsdd.py wsdd-master/src/wsdd

Copy to /usr/bin.

sudo cp wsdd-master/src/wsdd /usr/bin

Copy wsdd to /etc/systemd/system.

sudo cp wsdd-master/etc/systemd/wsdd.service /etc/systemd/system

Open wsdd.service in nano and comment out User=nobody and Group=nobody with a ; semicolon.

sudo nano /etc/systemd/system/wsdd.service
[Unit]
Description=Web Services Dynamic Discovery host daemon
; Start after the network has been configured
After=network-online.target
Wants=network-online.target
; It makes sense to have Samba running when wsdd starts, but is not required
;Wants=smb.service



[Service]
Type=simple
ExecStart=/usr/bin/wsdd --shortlog
; Replace those with an unprivledged user/group that matches your environment,
; like nobody/nogroup or daemon:daemon or a dedicated user for wsdd
; User=nobody
; Group=nobody
; The following lines can be used for a chroot execution of wsdd.
; Also append '--chroot /run/wsdd/chroot' to ExecStart to enable chrooting
;AmbientCapabilities=CAP_SYS_CHROOT
;ExecStartPre=/usr/bin/install -d -o nobody -g nobody -m 0700 /run/wsdd/chroot
;ExecStopPost=rmdir /run/wsdd/chroot



[Install]
WantedBy=multi-user.target

Save and exit (press CTRL + X, press Y and then press ENTER)

Start and enable wsdd.

sudo systemctl start wsdd
sudo systemctl enable wsdd

Output:

Created symlink /etc/systemd/system/multi-user.target.wants/wsdd.service → /etc/systemd/system/wsdd.service.

Now check that the service is running.

sudo service wsdd status

Output:

wsdd.service - Web Services Dynamic Discovery host daemon
Loaded: loaded (/etc/systemd/system/wsdd.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2020-06-10 10:51:39 CEST; 8s ago
Main PID: 40670 (python3)
Tasks: 1 (limit: 6662)
Memory: 10.8M
CGroup: /system.slice/wsdd.service
└─40670 python3 /usr/bin/wsdd --shortlog



jun 10 10:51:39 ubuntu systemd[1]: Started Web Services Dynamic Discovery host daemon.
jun 10 10:51:40 ubuntu wsdd[40670]: WARNING: no interface given, using all interfaces

You should now be able to browse your Ubuntu machines and Samba shares in the Windows 10 file explorer. You may need to restart the Windows 10 machines to force discovery.

You may also want to reboot the Ubuntu server just to make sure the wsdd service starts up automatically without issue.
How to Uninstall wsdd

If you want to completely uninstall wsdd, stop and disable the service.

sudo systemctl stop wsdd
sudo systemctl disable wsdd

Remove wsdd from /usr/bin.

sudo rm /usr/bin/wsdd

Remove service file.

sudo rm /etc/systemd/system/wsdd.service

Udskift din TDC Homebox med et modem.

This Article is in danish as it primary readers should be danish :).

 

22/05-2018 updated: Jeg har smidt min seneste version fil op, efter at jeg måtte sætte et nyt modem op grundet at den Zyxel jeg egenlig have skiftet over til døde efter overspænding på porten og tog en del andet udstyr med i faldet, så snart jeg har en ny Zyxel så smider jeg config op til denne :).

Jeg har i flere år brugt mit eget modem på min TDC ADSL2+ forbindelse (20/2Mbit), i forbindelse med omlægning til en 40/10Mbit forbindelse, blev jeg konverteret til en VDSL2 forbindelse, mit god gamle netgear DM111 ADSL2+ modem, skulle derfor udskiftes til noget som kan forstå VDSL2.

Jeg havde ved et held fået et TDC VDSL2 modem (Askey RTV1800-D79), dette modem understøtter iht. til TDC’s lister både Vectoring, SRA, samt G.INP, hvilket burde sikre driften i langtid.

OBS: jeg har godt nok telefon på mit abb. men jeg bruger det ikke, så disse noter drejer kun om at få internet igennem.

i min naivitet troede jeg at der ikke var forskel på en modem løsning og en router løsning (Homebox), dette viste sig dog at der var stor forskel.

følgende er de settings jeg er bekendt med:

Homebox:
VLAN ID = 101
QOS = 1
VLAN MUX
PTM IPoE

Modem:
VLAN ID = 50
QOS = 0
VLAN MUX
PTM IPoE

Modem settings er fisket ud ved at tilgå http://192.168.1.1 på modemet, Homebox settings er fundet å TDC’s forum.

for at tilgå modem, skal det lige have et spark over benet ved at reset det, hold reset knappen inde indtil at alle lamper blinker, gør dette nogle gange (det kan godt drille), forsøg derefter at tilgå den på 192.168.1.1, når det lykkes skuælle den gerne komme op og spørge om login, her bruger du admin som bruger og password.

man kan via modemet hive settings ud, men umiddelbart ikke ændre noget på denne, dette kan man dog workaround ved at redigere den fil man får ud af settings, jeg ligger hermed min originale fil op samt den redigeret fil som fik min forbindelse til at virke.

 

Original settings fra modem (TDC Setup): TDC_setup_org.zip

Orginale setting fra modem (Hiper Setup): Hiper_setup_org.zip

De settings jeg kører med idag: working_final_160203.zip

UPDATE nye settings: working_final_180522.zip

NB: Filerne er pakket som ZIP filer, da det gav lidt problemer med encodningen og er derved lige til at smide på boksen.

God fornøjelse med at få det til at spille 🙂

den primære ændring er:

Orginal:

<WANIPConnection instance=”1″>
<Enable>TRUE</Enable>
<ConnectionType>IP_Bridged</ConnectionType>
<Name>br_0_1_1</Name>
<ExternalIPAddress notification=”2″>0.0.0.0</ExternalIPAddress>
<X_BROADCOM_COM_IfName>ptm0.1</X_BROADCOM_COM_IfName>
<X_BROADCOM_COM_ConnectionId>1</X_BROADCOM_COM_ConnectionId>
<PortMappingNumberOfEntries>0</PortMappingNumberOfEntries>
</WANIPConnection>

Modificeret version:

<WANIPConnection instance=”1″>
<Enable>TRUE</Enable>
<ConnectionType>IP_Bridged</ConnectionType>
<Name>br_0_1_1</Name>
<ExternalIPAddress notification=”2″>0.0.0.0</ExternalIPAddress>
<X_BROADCOM_COM_IfName>ptm0.1</X_BROADCOM_COM_IfName>
<X_BROADCOM_COM_ConnectionId>1</X_BROADCOM_COM_ConnectionId>
<X_BROADCOM_COM_VlanMux8021p>1</X_BROADCOM_COM_VlanMux8021p>
<X_BROADCOM_COM_VlanMuxID>101</X_BROADCOM_COM_VlanMuxID>
<PortMappingNumberOfEntries>0</PortMappingNumberOfEntries>
</WANIPConnection>

Jeg vil sandsynligvis skrive mere her ved lejlighed, når jeg får mere tid til at kigge på settings.

Configuring Samba to be a WINS server

This is quite easy to do, and it makes browsing the smb network fast.

Configuring the server:
simply edit smb.conf (typically located at /etc/samba/smb.conf)
locate the the wins support and enable it.:

# Windows Internet Name Serving Support Section:
# WINS Support - Tells the NMBD component of Samba to enable it's WINS Server
wins support = yes

setup the way samba should resolve the hosts:

# What naming service and in what order should we use to resolve host names
# to IP addresses
#   name resolve order = lmhosts host wins bcast
   name resolve order = host wins bcast

The following option should be addet to the linux DHCP server (if you use linux as a DHCP server):

option netbios-name-servers x.x.x.x;

where x.x.x.x is the IP of the WINS server

If you use a normal router, sometimes they support pushing out the wins server, if you use a router running dd-wrt
go tothe  basic setup and add the WINS server IP, there.

If this fails you can add the WINS server manually to windows:
go to the control panel, and press the View network status and tasks, then press the change adapter setting
right click the network interface and select properties, select the TCP/IP (for windows 7 select TCP/IPv4)
and press properties again click advanced and select the WINS  and add the IP of the WINS server and you are ready to go

WINS_server_win7

For linux clients simply edit the smb.conf and add the following:

# WINS Server - Tells the NMBD components of Samba to be a WINS Client
# Note: Samba can be either a WINS Server, or a WINS Client, but NOT both
   wins server = x.x.x.x

replace x.x.x.x with the IP of the WINS server

Happy smb surfing 🙂