ipv6: `ifconfig` shows "Scope:Link" . What is "Scope:Link"?

Link scope, fe80::/10 (it's practically implemented as a /64, but the whole /10 is reserved), is isolated to devices on a layer 2 segment. You can use a device's fe80 address to communicate within the segment, but you'll need an address with a different scope to do any communication that requires routing outside of the segment.

Regarding your edit: While the idea of a private addressing is certainly in place in IPv4 (169.254/16 and the RFC 1918 ranges), the implementation of those is somewhat different due to the prevalence of NAT. In contrast, link-scope addresses and the fc00::/7 range (which is roughly equivalent to the RFC1918 ranges of IPv4) exist and are used alongside the global address of each device.

Special handling is in place in many implementations to account for an address' scope that wasn't needed in IPv4 implementations.