macOS tailscaled doesn't work

I want to start tailscale automatically when the machine starts. Auto start only works, when the users login. When I opened auto login, this time I saw an exclamation mark on the menu. I read couple of posts and found couple of things which all failed

Password:
logtail started
Program starting: v1.31.0-dev-t, Go 1.19.1: []string{"tailscaled"}
LogID: c3f278f76437f81c4a5ee5b571fea390d59dd5682ddad4c778be1bb328a51488
logpolicy: using system state directory "/Library/Tailscale"
wgengine.NewUserspaceEngine(tun "utun") ...
dns: using *dns.darwinConfigurator
link state: interfaces.State{defaultRoute=en1 ifs={en1:[192.168.68.112/24]} v4=true v6=false}
magicsock: disco key = d:800997d25d7ec679
Creating WireGuard device...
Bringing WireGuard device up...
Bringing router up...
external route: up
Clearing router settings...
Starting link monitor...
Engine created.
Start
using backend prefs; created empty state for "_daemon": Prefs{ra=true dns=true want=false Persist=nil}
Backend: logs: be:c3f278f76437f81c4a5ee5b571fea390d59dd5682ddad4c778be1bb328a51488 fe:
Switching ipn state NoState -> NeedsLogin (WantRunning=false, nm=false)
blockEngineUpdates(true)
health("overall"): error: state=NeedsLogin, wantRunning=false
wgengine: Reconfig: configuring userspace WireGuard config (with 0/0 peers)
wgengine: Reconfig: configuring router
wgengine: Reconfig: configuring DNS
dns: Set: {DefaultResolvers:[] Routes:{} SearchDomains:[] Hosts:0}
dns: Resolvercfg: {Routes:{} Hosts:0 LocalDomains:[]}
dns: OScfg: {Hosts:[] Nameservers:[] SearchDomains:[] MatchDomains:[]}
ipnserver: conn1: connection from unknown peer; read-only
RAW-STDERR: ***
RAW-STDERR: *** Lines prefixed with RAW-STDERR below bypassed logtail and probably come from a previous run of the program
RAW-STDERR: ***
RAW-STDERR:
RAW-STDERR: 8be1bb328a51488\n"}
RAW-STDERR: {"logtail": {"client_time": "2022-09-13T15:04:32.988763+03:00","proc_id": 3479699589,"proc_seq": 26}, "text": "flushing log.\n"}
^Ctailscaled got signal interrupt; shutting down
control: client.Shutdown()
control: client.Shutdown: inSendStatus=0
control: mapRoutine: quit
control: Client.Shutdown done.
flushing log.

I tried running sudo tailscale up and it says

failed to connect to local tailscaled (which appears to be running as tailscaled, pid 701). Got error: Failed to connect to local Tailscale daemon for /localapi/v0/status; not running? Error: dial tcp [::1]:49238: connect: connection refused

I am running Monterey 12.5.1 with M1

I will appreciate if you can tell me a method which would allow me to start tailscale automatically when the computer starts without any login and human interaction